У меня есть 2 jbuttons в моем приложении java. У меня есть 2 jpanels. эти 2 jpanels имеют различное содержимое, не связанное с eachother. теперь я хочу, чтобы всякий раз, когда пользователь нажимает кнопку, соответствующий экран jpanel должен отображаться, но в том же месте (jpanels имеют разную ширину & height).Как остановить переопределение двух jpanels в java
, когда я пытался сделать это в NetBeans один JPanel входит в другой JPanel
private void button1ActionPerformed(java.awt.event.ActionEvent evt)
{
// TODO add your handling code here:
button1panel.setVisible(true);
//all other panel's visibility is false
}
как и для button2 я имею ActionListener как этот
private void button2ActionPerformed(java.awt.event.ActionEvent evt)
{
// TODO add your handling code here:
//all other panel's visibility is false
button2panel.setVisible(true);
}
я поместил эти 2 панели один выше другой (button2panel over button1panel), чтобы я мог получить к нему доступ в том же месте
но как кнопка2панель мала по ширине & height, когда я вызываю button2panel.setVisible (true), он фактически не включен.
моя демонстрация говорит, что, поскольку кнопка2панель находится внутри кнопки 1panel &, видимость кнопки1panel является ложной, поэтому ее происходит.
, что я могу сделать, это просто взять button2panel вне button1panel, но если я это сделать, то расположение панели будет отличаться
, как это исправить ??
или любое лучшее решение для этого ??
Вот один рабочий пример (http://stackoverflow.com/a/12059031/1057230), кроме учебников :-) Или вы можете использовать 'GridBagLayout', если хотите ширину и высоту соответствующего' JPanel' s, чтобы оставаться таким же, как этот [пример] (http://stackoverflow.com/a/11166903/1057230) предлагает –