我需要你的帮助,我有一个jform父,这包含我的jinterternal框架的其他jframe,我有一个子框架,这个子框架需要打开其他子框架,但主框架没有打开这个孩子,我需要添加到属性以添加从第一个子框架打开的第二个子框架。我有一个想法,但没有工作:
从我的第一个孩子jframe
jdpDesktop.add(newform);
getContentPane().add(jdpDesktop);
newform.setSelected(true);
也是这样
jdpDesktop.add(newform); `
getContentPane().getParent().add(jdpDesktop);
newform.setSelected(true);
矿石放jframe代替jdpDesktop,我收到getParent()属性的空指针,可以帮我一些
应用程序模型是
机框() -children1 - >这需要打开children2来编辑一些参数 对于打开的孩子1我在mainFrame的菜单栏中有一些代码,这个按钮:
if (children1.isShowing()==false){
try {
String[] args = {"", ""};
children1.main(args);
children1.setVisible(true);
try {
jdpDesktop.remove(enviarMensaje);
jdpDesktop.add(children1);
children1.setSelected(true);
} catch (Exception e2) {
system.out.println(e2)
}
此代码在主框架中有一个run事件添加children1:
main frame = new main();
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
jdpDesktop = new JDesktopPane()
@Override
public Dimension getPreferredSize() {
return new Dimension(600, 600);
}
};
frame.setContentPane(jdpDesktop);
jdpDesktop.putClientProperty("JDesktopPane.dragMode", "outline");
frame.pack();
frame.setVisible(true);
并且孩子们有一张桌子,鼠标点击的事件需要为mainFrame打开children2,问题是在mainFrame中我在main()里面的run()中添加了孩子:
public static void main(String[] args) {
eventQueue.invokeLater(new Runnable() {
public void run() {
//Code
}
}