我的主类显示一个 JMenuBar。此 JMenuBar 由“calculator.ui.MenuBar”管理。
public JMenuBar createMenuBar()
{
JMenuBar menuBar = new JMenuBar();
new calculator.ui.MenuBar(menuBar);
return menuBar;
}
MenuBar 创建我的“文件”JMenu 和“插入”JMenu。
public MenuBar(JMenuBar menuBar)
{
new FileMenu(menuBar);
new InsertMenu(menuBar);
}
FileMenu 包含“文件”的所有选项。在 File 类中,有一个名为“New Calculator”的 JMenuItem。现在,当您单击“新建计算器”时,我希望主类中的 JPanel 在我的主类中创建一个计算器实例。
newFileSubMenu = new JMenu("New...");
calculatorFileSubMenu = new JMenuItem("New Calculator");
calculatorFileSubMenu.getAccessibleContext().setAccessibleDescription(
"New Calculator");
newFileSubMenu.add(calculatorFileSubMenu);
ActionListener newCalculatorListener = new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
newCalculator();
}
};
calculatorFileSubMenu.addActionListener(newCalculatorListener);
这是我的主类 JPanel 的代码:
public Container createContentPane() {
JPanel contentPane = new JPanel(new BorderLayout());
contentPane.setOpaque(true);
JTabbedPane tabbedPane = new JTabbedPane();
return contentPane;
}
我的问题与我的程序设计有关。对于计算器的每个实例,我想:
- 在包含我的计算器的主 JPanel 中创建一个 JPanel(让我感到困惑的是我如何 - 从我的 FileMenu 类 - 创建一个在我的主类中的 JPanel?)。
- 确保 Calculator 对象刷新。
注意:我还希望我的 JPanel 位于 TabbedPanes 中(如果这改变了任何东西;如果没有,那么一旦我知道第一个问题的答案,我就可以弄清楚那部分。)
感谢您的帮助,我希望我已经很清楚我想要做什么。