Нужно решение, чтобы нажать кнопку в первом jframe, и это переносит меня в другой jframe - PullRequest
1 голос
/ 16 января 2011

Я использую netbeans для Java, и я создал файл, включающий 2 JFrames, и поместил кнопку в первый JFrame, и я хочу знать, как заставить эту кнопку перенести меня в другой JFrame?

Ответы [ 3 ]

2 голосов
/ 16 января 2011

Вместо того, чтобы поменять местами реальные окна на экране, я предлагаю вам иметь одно основное приложение JFrame и поменять JPanels, которые оно отображает, в зависимости от состояния приложения. Это больше соответствует большинству профессиональных приложений, которые мы используем, включая текстовые процессоры и IDE, и будет казаться пользователю более естественным. Чтобы достичь этого в Java, изучите, как ваш контейнер (обычно JPanel, содержащий другие JPanel и компоненты) использует CardLayout. Затем вы рассматриваете JPanels как карты и меняете их с помощью методов макета. Исключением является случай, когда вам нужно диалоговое окно поверх основного графического интерфейса, и это можно сделать, просто используя один из методов JOptionPane, или более подробно, создав и используя модальный или немодальный JDialog. 1001 *

Ссылка на учебное пособие по CardLayout

2 голосов
/ 16 января 2011

Следующие магические линии делают то, что вы хотите. Очевидно, frame есть целевой кадр, то есть тот, на который вы хотите переместить фокус

frame.requestFocus();
frame.toFront();
1 голос
/ 16 января 2011

@ AlexR верен, и я предпочитаю подход @Hovercraft Full Of Eels, но вы также можете поэкспериментировать с этим примером кнопок и рамок.

...