gpt4 book ai didi

java - 如何在另一个类中获取JFrame对象移动

转载 作者:太空宇宙 更新时间:2023-11-04 06:17:17 25 4
gpt4 key购买 nike

所以,我有一个类 Window,它扩展 JFrame,这是更大的窗口。

enter image description here

然后我有类 MathematicalFunvtions,它也扩展 JFrame,这是较小的窗口。

我想将它们组合到另一个“测试”类中,以便它们一起工作。

public static void main(String args[]) {       
Window mainwindow;
mainwindow = new Window();
mainwindow.setVisible(true);


MathematicalFunctions functions;
functions = new MathematicalFunctions(mainwindow);
}

我的方法是提供 Window 对象的引用作为 MathematicalFunctions 的参数,并让它完成工作。

  1. 问题是...这是一种编程的好方法吗?

  2. 当我将主窗口发送到函数时,我想知道该对象内部何时移动主窗口...以便该对象可以跟踪它并进行调整,以便它们始终在一起。

最佳答案

我没有放弃研究,最后我明白了......我将此代码放入 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);
}

;)

关于java - 如何在另一个类中获取JFrame对象移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27920740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com