0

我需要你的帮助,我有一个 jform 父级,这包含我的另一个 jframe 类型的 jinternal 框架,我有一个子框架,这个子框架需要打开其他子框架,但主框架没有打开这个子框架,我需要添加到属性来添加从第一个子框架打开的第二个子框架。我有一个想法,但不工作:

从我的第一个孩子 jframe

jdpDesktop.add(newform);
getContentPane().add(jdpDesktop);
newform.setSelected(true);

也是这样

jdpDesktop.add(newform);                                `
getContentPane().getParent().add(jdpDesktop);
newform.setSelected(true);

或者把 jframe 而不是 jdpDesktop,我收到 getParent() 属性的空指针,有人可以帮助我吗

应用模型是

mainFrame() -children1 -> 这需要打开 children2 来编辑一些参数 对于打开的 children1 我在 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)
}

此代码在主框架中有一个运行事件添加 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);

而children 1 有一张表,mouseclick 事件需要为mainFrame 打开children2,问题是在mainFrame 中我在main 里面的run() 中添加了children:

public static void main(String[] args) {
eventQueue.invokeLater(new Runnable() {
public void run() {
//Code
}
}
4

0 回答 0