我有一个登录系统,它登录正常,但当用户登录时,它只显示新jPanel的一半我正在使用Java和Netbeans
这是我的代码:
if(loggedIn){
Main_Menu panel= new Main_Menu();
controlPanel.setVisible(false);
mainFrame.remove(controlPanel);
mainFrame.add(controlPanel2);
controlPanel2.add(panel);
controlPanel2.setVisible(true);
}
}catch(SQLException ex){
JOptionPane.showMessageDialog(null, "Problem executing SQL Query.");
旧面板被删除并添加新面板,但是当您登录时,只有一半的jPanel可见,为什么会这样?
只有一半的jPanel是可见的,为什么会这样?
第二个面板的大小更大,因此您需要 pack() 框架,以便所有组件都以它们喜欢的大小显示。
或者另一种选择是使用Card Layout
,让布局管理器处理面板的交换。它还将正确管理大小。
阅读 Swing 教程中有关如何使用 CardLayout 的部分,了解更多信息和工作示例。