到目前为止,我一直在制作一个未修饰的JFrame,我想知道是否可以通过点击JPanel来移动未修饰的JFrame。
以下是我正在处理的源代码。
private static void createFrame()
{
JFrame frame = new JFrame("Text Frame");
frame.setLayout(null);
frame.setSize(500,300);
frame.setUndecorated(true);
JPanel panel = new JPanel();
panel.setBounds(0, 2, 500, 50);
panel.setBackground(new Color(60, 65, 70));
frame.add(panel);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
我想做的是: 单击并按住我的光标在JPanel区域,以便能够移动JFrame。
我做了一些研究并遇到了类似的问题:Moving undecorated window by clicking on JPanel
我不明白如何在我的代码中集成(由用户Sorter)提供的代码。
还是有其他解决方案吗?
答案 0 :(得分:3)
提供的解决方案可以轻松集成到您的示例中。
只需将Sorter的示例添加为单独的类。
然后改变
JPanel panel = new JPanel();
到
JPanel panel = new MotionPanel(frame);
小组现在应该可以移动了。
答案 1 :(得分:2)
查看Moving Windows以查找为您执行此操作的课程。
该类旨在允许您移动桌面上的窗口或面板上的组件。