如何减少Java Swing抖动/闪烁/震动时移动对话框与mousellistener /MouseMotionList



我构建了一个没有任何修饰的Java Swing对话框。我已经实现了对话框移动使用拖放MouseListener和MouseMotionListener接口。

然而,在测试过程中,对话框在移动时闪烁/抖动/晃动。我希望拖放动作流畅/平滑。

我在Windows XP (SP3)上运行JDK 1.6.0.21。

下面是一些示例代码: <>之前@Override公共void mousedrag (MouseEvent事件){Component = event.getComponent();If (this != component) {返回;}int modifiers = event.getModifiersEx();//这意味着没有Ctrl/Shift/Alt/Meta。如果(事件。BUTTON1_DOWN_MASK == modifiers) {Point point_relative_to_source = event.getPoint();Int delta_x = point_relative_to_source。X - _mouse_press_point.x;Int delta_y = point_relative_to_source。Y - _mouse_press_point.y;Point component_location = component.getLocation();component_location。X += delta_x;component_location。Y += delta_y;component.setLocation (component_location);}}保护点_mouse_press_point;@Override公共无效mousePressed(MouseEvent事件){对象源= event.getSource();If (this != source) {返回;}System.out.println("mousePressed");_mouse_press_point = event.getPoint();}@Override公共无效MouseEvent (MouseEvent事件){对象源= event.getSource();If (this != source) {返回;}System.out.println("mouseReleased");_mouse_press_point = null;}之前

你知道如何减少闪烁/抖动/抖动吗?

谢谢,Arpe

移动窗口提供了一个可以用来移动窗口的类。

最新更新