JFrame виден, хотя я не писал: frame.setVisible (true) - PullRequest
1 голос
/ 20 марта 2019

Итак, я работаю над проектом с JFrames. Когда программа запускается, она создает JFrame в методе с именем "initialThread", а затем устанавливает границы, операцию закрытия по умолчанию и видимость в методе с именем "initialize". При отладке метода «initialThread», рамка автоматически становится видимой без меня, за исключением метода «initialize».

Код для запуска методов:

    public void loadPanels(){
    initialThread();
    initialize();
    }

Вот код с двумя Методами, о которых я говорил:

public void initialThread(){
    try {
        EventQueue.invokeAndWait(new Runnable() {

            public void run() {
                try {
                    frame = new JFrame();
                    frame.setAlwaysOnTop (true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    } catch (InvocationTargetException e) {
        e.printStackTrace();
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
}


/**
 * set the basic functions and configurations of the frame.
 */
private void initialize() {
    frame.setBounds(100, 100, 450, 300);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
}
...