我可以在不引用构造函数中的对象的情况下执行此操作吗?
换句话说,创建时从FrmTaoChild继承的任何类都必须在主窗口的工具栏上添加按钮
public class FrmTaoMain extends JFrame {
JToolBar tbTask = new JToolBar();
public FrmTaoMain(String Caption) {
super(Caption);
...
FrmTaoChild FrmChild = new FrmTaoChild(tbTask,"test");
}
}
public class FrmTaoChild extends JInternalFrame {
public FrmTaoChild(JToolBar tbTask, String Caption)
{
super (Caption);
JButton btnTask = new JButton(Caption);
tbTask.add(btnTask);
}
}
最佳答案
如How to Use Internal Frames中的讨论,“通常,您将内部框架添加到桌面窗格中。”与其传递JToolBar
作为参数,不如考虑让FrmTaoChild
提供一个Action
,该FrmTaoMain
可用于相应的JToolBar
按钮。有关更多信息,请参见How to Use Actions。
顺便说一句,Java中的变量名通常以小写开头。
public class FrmTaoChild extends JInternalFrame {
private Action action;
public FrmTaoChild(String caption) {
super(caption);
action = new AbstractAction(caption) { ... }
}
public Action getAction() {
return action;
}
}
关于java - Java:从JInternalFrame获取Mainform对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2486179/