JAVA Swing我需要将一个子类型的jframe添加到内部框架给其他子代的父级

时间:2014-04-19 05:52:50

标签: java swing jframe jinternalframe jdesktoppane

我需要你的帮助,我有一个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
}
}

0 个答案:

没有答案