Создание JDialog с GUI swing JFrame в качестве родителя? - PullRequest
0 голосов
/ 11 апреля 2020

Это может быть очень глупый вопрос, но я просто не знаю, как это сделать.

Я использую Swing GUI для создания своего JFrame. Так что public class client extends javax.swing.JFrame.

В основном методе, который я делаю:

public void run() {
    new Client().setVisible(true);
}

Когда нажата кнопка, я хочу сделать это:

JDialog d = new JDialog(frame, "Example", true);

За исключением того, что я понятия не имею, что входит в «кадр». Я пытался сказать Клиент, но это не сработало. Что предполагается для go, так что мой родитель JDialog является фреймом, откуда я его вызываю?

1 Ответ

1 голос
/ 11 апреля 2020

Когда нажата кнопка, я хочу сделать это:

Вы должны добавить ActionListener к кнопке. ActionEvent будет содержать исходный объект, который вы щелкнули.

Таким образом, вы можете написать общий c код в ActionListener, чтобы получить родительское окно кнопки:

JButton button = (JButton)event.getSource();
Window window = SwingUtilities.windowForComponent( button );
JDialog d = new JDialog(window, "Example", true);
...