0

我在 a 中有一个组件,JFrame我需要知道该组件何时相对于屏幕空间移动。

它要么在框架移动时发生,要么在布局更改时发生。

我的问题:

  • 当我将 a 附加ComponentListener到我的组件并且框架被移动时,componentMoved()不会调用回调方法,因为该组件相对于其父级仍然具有相同的位置(此处为JFrame
  • 我想知道何时移动组件而不添加 ComponentListener自身JFrame...

所以我正在寻找一种方法来了解组件何时相对于屏幕移动。

注意:这些规范是强加给我的......我别无选择,但在这里解释它会很长而且无关紧要。

4

1 回答 1

1

使用SwingUtilities. 仅通过 (0,0) 点并查看生成的坐标

public static void convertPointToScreen(Point p,Component c)

您的侦听器应附加到包含框架的组件

于 2013-02-19T12:08:31.333 回答