Я создаю одно действительно большое приложение. Ситуация такова: У меня есть много таблиц, которые я могу заполнить данными из своего Java-приложения.
У меня есть группы и для каждой группы есть кнопка в моем главном JFrame (Меню) и таблица в моей базе данных:
Пример: Таблица A хранит информацию для группы A
У меня есть одна кнопка, которая называется «Создать», и она должна добавить новую группу — это означает создать новую таблицу, а также добавить новую кнопку в MainFrame. Например, эта новая кнопка открывает фрейм под названием NewGroupFrame. Можно ли добавить кнопку в мой MainMenu кадр из этого NewGroupFrame?
В принципе: Можно ли добавлять компоненты из одного фрейма в другой?
я думаю, вы не поняли мой вопрос. Я хочу создать полностью новую кнопку и добавить ее в другой кадр. Я не хочу, чтобы 2 кадра делили 1 компонент.
I want to create entire new button and to be added to the other frame. хорошо, давай, делай. Компонент не знает, что он будет добавлен в другой кадр. Все, что вам нужно, это ссылка на панель, на которую вы хотите добавить компонент. Кроме того, вы не должны использовать второй JFrame. Если вам нужно дочернее окно, вы должны использовать JDialog. Приложение обычно имеет только один родительский JFrame.
Точно. Как туда добраться? Как должна выглядеть ссылка? Также мое внимание привлекло ваше предложение JDialog. Не могли бы вы привести пример, если это возможно.
Ваш вопрос вообще не содержит кода, что заставляет меня предположить: до этого момента вы использовали конструктор графического интерфейса Netbeans и еще мало что знаете о программировании с использованием Swing API. Я прав?
Абсолютно правильно
1) См. Использование нескольких JFrames, хорошая/плохая практика? В ответах есть много вариантов. В этом случае кажется, что JTabbedPane с содержимым новых таблиц могут подойти новые вкладки. Но вариантов много, и вы лучше знаете ситуацию. 2) Совет "Как туда добраться?": добавьте @camickr (или кого угодно, важно @) к уведомлять человеку нового комментария.
@BorislavStefanov хорошо ... это придется изменить.
Спасибо вам всем. Не знаю, как действовать после прочтения ссылки @AndrewThompson, и то, как я думал действовать, плохо.
«Не знаете, как поступить», используйте общую стратегию: разбейте большую проблему на более мелкие. Сначала вы можете добавить функциональность, необходимую для класса JFrame. Например, метод public void addButton(String tableName), который позволяет динамически добавлять кнопку.
@Gimby Не могли бы вы дать мне больше информации, почему я должен, например, переключить графический интерфейс NetBeans на Eclipse Swing? В соответствии с этим: stackoverflow.com/questions/2717889/… использовать NetBeans можно, даже больше - это предпочтительно.




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