所以,我有一个扩展 JFrame
的类窗口,这是一个更大的窗口。
然后我的课程MathematicalFunvtions
也扩展 JFrame
,这是一个较小的窗口。
我想在另一个班级中将它们组合在一起"测试"所以他们一起工作。
public static void main(String args[]) {
Window mainwindow;
mainwindow = new Window();
mainwindow.setVisible(true);
MathematicalFunctions functions;
functions = new MathematicalFunctions(mainwindow);
}
我这样做的方法是将Window对象的引用作为MathematicalFunctions
的参数,并让它完成工作。
问题是......这是编程事物的好方法吗?
当我将主窗口发送到函数时,我想知道该对象内部,当主窗口被移动时...所以这个对象可以跟踪它和调整到所以他们总是在一起。
答案 0 :(得分:1)
我没有放弃研究,最后我得到了...我把这段代码放在MathematicalFunctions的构造函数中:
mainwindow.addComponentListener(new java.awt.event.ComponentAdapter() {
@Override
public void componentMoved(java.awt.event.ComponentEvent evt) {
GlowneComponentMoved(evt);
}
});
//and the listener....
private void GlowneComponentMoved(ComponentEvent evt)
{
this.setLocation( (Okno_Glowne.getX()+ Okno_Glowne.getWidth()+10), Okno_Glowne.getY());
}
它应该如何工作。每次我移动更大的窗口,小的一个跟随:)
更多...... 我也做过MathematicalFunction类JDialog扩展
public class MathematicalFunctions extends javax.swing.JDialog
并且测试类看起来像之前
public static void main(String args[])
{
oknoo mainwindow;
mainwindow = new oknoo();
mainwindow.setVisible(true);
MathematicalFunctions funkcje;
funkcje = new MathematicalFunctions(OknoGlowne);
}
)