Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JDialog работает до вызова setVisible(), оп-ции за setVisible не обрабатываются 
V
    Опции темы
bara
Дата 21.8.2010, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 20.2.2007

Репутация: нет
Всего: нет



Создаю простой класс JDialog с таким кодом:
Код

public class test extends JDialog {
    static JFrame jf;
    
    public static void main(String[] args){
        new test();
    }
    
    public test(){
        super(jf,"Тест",true);
        initGUI();
    }
    
    void initGUI(){
        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

        JPanel panel = new JPanel();
            
        JLabel label = new JLabel("Текст");
        panel.add(label);
        
        add(panel);
        setLocationByPlatform(true);
        setResizable(false);
        pack();
        System.out.println("Before setVisible");    // выводится сразу 
        setVisible(true);
        System.out.println("After setVisible");        // выводиться после закрытия 
    }
}


Текс "Before setVisible" выводиться сразу, а все, что после метода setVisible(true), выполняется только после закрытия окна. Что не так? Или так и должно быть?
PM MAIL   Вверх
Sleepy_PIP
Дата 21.8.2010, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 30.6.2004
Где: Moscow

Репутация: нет
Всего: 12



вот что говорит документация:

JDialog->awt.Dialog

setVisible
public void setVisible(boolean b)
Shows or hides this Dialog depending on the value of parameter b.

Overrides:
setVisible in class Window
Parameters:
b - if true, makes the Dialog visible, otherwise hides the Dialog. If the dialog and/or its owner are not yet displayable, both are made displayable. The dialog will be validated prior to being made visible. If false, hides the Dialog and then causes setVisible(true) to return if it is currently blocked.
Notes for modal dialogs.
setVisible(true): If the dialog is not already visible, this call will not return until the dialog is hidden by calling setVisible(false) or dispose.
setVisible(false): Hides the dialog and then returns on setVisible(true) if it is currently blocked.
It is OK to call this method from the event dispatching thread because the toolkit ensures that other events are not blocked while this method is blocked.
See Also:


акцент:
setVisible(true): If the dialog is not already visible, this call will not return until the dialog is hidden by calling setVisible(false) or dispose.
setVisible(false): Hides the dialog and then returns on setVisible(true) if it is currently blocked.
It is OK to call this method from the event dispatching thread because the toolkit ensures that other events are not blocked while this method is blocked.


так что вроде бы все правильно, нет?


--------------------
--
Sleepy_PIP. Pavel Pryazhentsev (ex. 2:5020/141) "... Лучше быть нужным, чем
свободным ..."
PM MAIL ICQ   Вверх
bara
Дата 21.8.2010, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 20.2.2007

Репутация: нет
Всего: нет



все ясно, спасибо
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0407 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.