2011-07-07 2 views
0

Для всех моих предыдущих проектов я использовал JFrames, в котором большинство новых задач открываются по новому JFrames поверх основного JFrame. Но для моего следующего проекта клиент попросил открыть новые окна внутри JFrame (он имел в виду JInternalFrame).Недостатки использования jInternalFrame

Что я хочу знать, есть ли недостатки при использовании JInternalFrame? поскольку Sun указывает, что это LightWeight Component по сравнению с JFrame.

+1

«Для всех моих предыдущих проектов я использовал JFrames, в котором большинство новых задач открываются на новых JFrames поверх основного JFrame». Обычно приложение должно иметь только один JFrame, а дочерние окна должны быть JDialogs. – camickr

+0

Рассматривали ли вы использование инфраструктуры стыковки (например, платформы Netbeans или Eclipse)? –

+0

@camickr: - Что вы предпочитаете? JDialog или JInternalFrame – Nipuna

ответ

1

как Sun указывает, что это компонент LightWeight по сравнению с JFrame.

JFrame - в основном легкий компонент. Граница и название - объект, связанный с ОС, и вы не можете изменить поведение любой из этих функций. Однако все компоненты Swing добавляются в область содержимого фрейма, который является JPanel.

JInternalFrame также использует JPanel в качестве области содержимого, поэтому любой компонент Swing, который вы можете добавить в JFrame, вы можете добавить в JInternalFrame.

0

Просто не забудьте добавить свои внутренние рамки в JDesktopPane. tutorial имеет список правил для проверки. Вы можете посмотреть на проект с открытым исходным кодом, который использует внутренние фреймы, например SQirreL SQL, чтобы узнать, нужно ли им очень много обходных решений.

Смежные вопросы