我有两个类; Students 和 RegisterStudents,因此有 2 个不同的 main_panel(1 类)和 panel_1(2 类)。我想做的是,当按下学生界面上的按钮时,整个 panel_1 应该出现在 main_panel 中。我已经将两者设置为相同的大小。这可能吗?
到目前为止我得到的代码是:
JButton btnNewButton = new JButton("Register Student");
btnNewButton.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
Students main_panel = new Students();
RegisterStudent panel_1 = new RegisterStudent();
main_panel.add(panel_1);
}
});
btnNewButton.setBounds(0, 162, 167, 37);
panel.add(btnNewButton);
但这并没有做任何事情?它正在编译,但 panel_1 实际上并未出现在 main_panel 中。有人有什么建议吗?
最佳答案
JButton btnNewButton = new JButton("Register Student");
btnNewButton.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
Students main_panel = new Students();
RegisterStudent panel_1 = new RegisterStudent();
main_panel.add(panel_1);
panel.add(main_panel); // ADD THIS LINE
}
});
btnNewButton.setBounds(0, 162, 167, 37);
panel.add(btnNewButton);
您正在初始化新的 main_panel
和新的 panel_1
,并将 panel_1
添加到 main_panel
,但随后您没有对新的 main_panel
执行任何操作。
此外,我强烈建议以其他方式命名变量 - 这些名称非常不直观。
关于java - 框架 2 位于框架 1 内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9322535/