所以,我在我建立一个聊天的主界面窗口的JFrame。该窗口/ JFrame中有几个按钮,其每一个示出一个JDialog(我Netbeans中拖动一个JDialog到父(先前创建的?)的JFrame)。将未修饰的JDialog
我的问题是,这两个窗口都设置为undecorated = true
,所以我希望让用户拖动和通过点击和拖动窗口的
在我已经通过下面的代码来完成这个一切jFrames只是initComponents()
后:
final Point point = new Point(0,0); // Why 'final' and not simply Point point?
addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
if(!e.isMetaDown()){
point.x = e.getX();
point.y = e.getY();
System.out.println("Ratón pulsado: " + point.x + "," + point.y);
}
}
});
addMouseMotionListener(new MouseMotionAdapter() {
public void mouseDragged(MouseEvent e) {
if(!e.isMetaDown() && point.y <= 17){ //Coordinates of title bar, any X and up to 17px from the top border
Point p = getLocation();
setLocation(p.x + e.getX() - point.x, p.y + e.getY() - point.y);
System.out.println("Ratón movido: " + (p.x + e.getX() - point.x) + "," + (p.y + e.getY() - point.y));
}
}
});
不过,我不知道如何在的JDialog使用此代码。当我右键单击它在导航器,并选择自定义代码,那么我不能在那里,因为整个的JFrame停止工作粘贴。我是JFrames的jDialogs儿童的新东西,所以请帮助我一些指导:)谢谢
搜索组件动,别忘了给予好评这个(这些)的答案(S) – mKorbel 2013-04-07 20:25:20
的作者对于[示例](http://stackoverflow.com/a/7760896/230513)。 – trashgod 2013-04-07 20:55:47