Заменить jFrame на jDialog? - PullRequest
       1

Заменить jFrame на jDialog?

0 голосов
/ 29 декабря 2011

Я пытался изменить jFrame на jDialog, чтобы он наследовал значок главного окна, но я понятия не имею, как это сделать.Я попытался установить его код с public class jSemestriala extends javax.swing.JFrame на public class jSemestriala extends javax.swing.JDialog, но это не изменило значок окна.Есть идеи?Я использую NetBeans 7.0.1

Ответы [ 3 ]

1 голос
/ 29 декабря 2011

В качестве владельца JDialog необходимо указать рамку «главного окна»:

// ownerframe is a JFrame;
JFrame ownerframe = new JFrame();
JDialog dlg = new JDialog(ownerframe);

JDialog s имеют рамки владельца. Рамка либо создается для вас, если вы вызываете конструктор new JDialog(), в этом случае рамка невидима; или вы предоставляете это диалогу в его конструкторе, используя new JDialog(ownerframe).

1 голос
/ 29 декабря 2011

JDialog берет свой значок из рамки владельца. У вас есть два варианта:

  1. Создайте невидимый JFrame, установите для него иконку и установите этот фрейм в качестве владельца диалогового окна.
  2. Создайте диалог, найдите владельца и установите для него значок.

Я бы выбрал первый вариант, который мне кажется более безопасным. Второй использует (общего) владельца диалога. Это может вызвать побочные эффекты.

Для для дальнейшего чтения .

Но если у вас уже есть основной фрейм, вам просто нужно установить его как владельца в конструкторе диалога.

0 голосов
/ 29 апреля 2016
  • создать новый jdialog

  • на бумажном носителе для компонентов в режиме конструктора jframe (вы можете использовать окно навигатора для четкого копирования всех. Конечно, просто скопируйтекомпоненты в jframe)

  • вставьте его в jdialog (снова используйте окно навигатора. Конечно вставьте в jdialog)

  • распечатайте исходный код из jframeОкно исходного кода вставьте его в исходный код jdialog

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

  • исправьте ошибки в окне исходного кода нового jdialog, используя ваши глаза и руки:)

  • помните все время: будьте осторожны при выборе типа формы класса.

извините за мой английский.
это может занять много времени, но это сработает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...