java swing如何编写像eclipse界面模块可拖动
即一个界面被分割成1,2,3三个窗体,1就像底下的console窗口,原先时横躺在下面,用鼠标拖动可以变成竖直的窗口,这种效果怎么实现呢?最好给个例子...
即一个界面被分割成1,2,3三个窗体,1就像底下的console窗口,原先时横躺在下面,用鼠标拖动可以变成竖直的窗口,这种效果怎么实现呢?最好给个例子
展开
1个回答
展开全部
首先这种效果我没有做过,因为现在实在没有人用swing写GUI客户端了。
让我现在给你写个完整的代码也么那么多时间》
首先分隔成三个窗体,用三个jpanel放到jframe中,然后仔细的设置窗体和jpanel的宽高和位置就能了,
至于拖动变成竖的,你只需要在底下console的窗口的jpanel加上MouseListener,具体的可靠下面的代码:
注意的是,当底下的console的位置变更,变成竖的了,其他的jpanel的位置你也需要进行更新调整
myFrame.addMouseListener(new MouseAdapter() {
// 按下(mousePressed
// 不是点击,而是鼠标被按下没有抬起)
public void mousePressed(MouseEvent e) {
// 当鼠标按下的时候获得窗口当前的位置
origin.x = e.getX();
origin.y = e.getY();
}
});
myFrame.addMouseMotionListener(new MouseMotionAdapter() {
// 拖动(mouseDragged
// 指的不是鼠标在窗口中移动,而是用鼠标拖动)
public void mouseDragged(MouseEvent e) {
// 当鼠标拖动时获取窗口当前位置
Point p = myFrame.getLocation();
// 设置窗口的位置
// 窗口当前的位置 + 鼠标当前在窗口的位置 - 鼠标按下的时候在窗口的位置
myFrame.setLocation(p.x + e.getX() - origin.x, p.y + e.getY()
- origin.y);
}
});
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询