我正在使用Java桌面应用程序而且我不熟悉JAVA,我在面板之间切换时遇到问题,因此当我从JMenu中选择一个JMenuItem时,实际的面板应该会改变。 我有一个主Jframe,只有一个Panel,所以如何为其他JmenuItem添加其他面板,在同一个Jframe中,我尝试这个代码:
private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {
TextArea ta;
Dimension d = mainPanel.getSize();
mainPanel.removeAll();
JPanel painel3 = new JPanel();
painel3.setSize(d);
ta = new TextArea();
ta.setSize(d);
painel3.add(ta);
JScrollPane scrollPane = new JScrollPane();
scrollPane.add(painel3);
mainPanel = painel3;
}
答案 0 :(得分:0)
类似的东西:
private void menuItem1ActionPerformed(ActionEvent evt) {
scrollPane.getViewport().removeAll();
scrollPane.getViewport().add(panel1);
}
private void menuItem2ActionPerformed(ActionEvent evt) {
scrollPane.getViewport().removeAll();
scrollPane.getViewport().add(panel2);
}
JScrollPane在放置JPanel的普通无界平面上有一个“视口”。
因此,不会立即添加到滚动窗格。然而,可以new JScrollPane(panel3)
进行初始化。