我编写了一个简单的绘图程序,并使用菜单http://download.oracle.com/javase/tutorial/displayCode.html?code=http://download.oracle.com/javase/tutorial/uiswing/examples/components/MenuLookDemoProject/src/components/MenuLookDemo.java来创建菜单。
因此,在显示菜单的程序中,我仅添加了以下几行:
MenuDemo demo = new MenuDemo();
frame.setJMenuBar(demo.createMenuBar());
当我启动程序时,菜单可以成功工作,但是另一方面,例如,当我单击菜单上的某项时,在方法“ actionPerformed”中,我想更改程序的布尔变量。但是“ MenuLookDemo.java”中存在“ actionPerformed”,因此无法访问变量。
你能建议一个解决方案吗?
谢谢
最佳答案
也许您可以重写类MenuDemo
并将您的对象传递给MenuDemo
来访问变量。
class MenuDemo{
YourType obj;
MenuDemo(YourType obj){
this.obj = obj;
}
// Now you can access elements of obj
}