Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > windowClosing и windowClosed


Автор: XClan 19.11.2003, 15:28
Чем отличается windowClosing и windowClosed?

Пишу первое , кричит: что нужен метод второй! Вставляю второй, кричит на первый!
Или мне надо эти 2 впихивать в класс?

Автор: AntonSaburov 19.11.2003, 16:06
Без кода ничего не понятно. Если ты реализуешь интерфейс, то надо тогда реализовать все, что в нем описано. Лучше приведи код.

Автор: DarkDS 19.11.2003, 16:07
windowClosing - уведомление о том что идет закрытие данного окна.
windowClosed - уведомление о том что данное окно было закрыто.
То есть как только нажимаешь крестик (закрытие окна) вызывается первый метод, потом идут какие то операции по закрытию (внутренние для фрейма), окно закрывается и вызывается второй метод.
Если ты пишешь windowListener, то нужно определять _ВСЕ_ методы, объявленные в интерфейсе.

Автор: XClan 19.11.2003, 16:50
Да пишу windowListener для диалогового окна.
Хотел чтобы после нажатия кнопки "Добавить" автоматический после всех операции закрывала диалоговое окно!

Код

   public void windowClosing(java.awt.event.WindowEvent windowEvent) {
       if (windowEvent.getSource() == Jadd.this) {
           Jadd.this.exitForm(windowEvent);
       }
   }

Код

   public void windowClosed(java.awt.event.WindowEvent windowEvent) {
       if (windowEvent.getSource() == Jadd.this) {
           Jadd.this.exitForm(windowEvent);
       }
   }

Автор: DarkDS 19.11.2003, 17:11
А листенер окна зачем тебе нужен тогдаconfused.gif

1. Насколько я понял ты хочешь чтобы при нажатии на кнопку Адд окно закрывалось... так?

Автор: XClan 20.11.2003, 10:43
Да!

Автор: DarkDS 20.11.2003, 21:19
Цитата(XClan @ 20.11.2003, 10:43)
Да!

Хы... Тогда тебе Виндов листенер никак не поможет, так как его задача только уведомлять о том что окно было закрыто...
Вот небольшой пример того, что тебе нужно... smile.gif
Код

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JPanel;


public class JButtonDialog extends JDialog
{
public JButtonDialog()
{
 super();
 
 setTitle( "Close Dialog" );
 setModal( true );
 JButton button = new JButton("Close me!");
 button.addActionListener( new ActionListener()
 {
  public void actionPerformed(ActionEvent e)
  {
   dispose();
  }
 } );
 
 JPanel contentPane = new JPanel( new BorderLayout() );
 contentPane.add( button, BorderLayout.CENTER );
 setContentPane( contentPane );
 pack();
}

public static void main(String[] args)
{
 JDialog dialog = new JButtonDialog();
 dialog.show();
 System.out.println("test");
 System.exit(0);
}
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)