java窗体去掉最小化按钮

java窗体怎么去掉最小化按钮?用什么方法,JFrame类的对象..
2025-02-23 04:42:03
推荐回答(2个)
回答1:

) 要去掉标题栏:
jFrame.setUndecorated(true);
// 这样就可以去掉Jframe中对window的装饰了,

2) 去掉标题栏,我们就有可能要给程序写代码提供最小化,最大化,关闭的操作,如何实现?
只要给按纽添加MouseListener,
在mouseClick中的调用

jFrame.setExtendedState(jFrame.ICONIFIED); //最小化

if(jFrame.getExtendedState() != jFrame.MAXIMIZED_BOTH)
jFrame.setExtendedState(jFrame.MAXIMIZED_BOTH);
else
jFrame.setExtendedState(jFrame.NORMAL);
// 最大化或正常状态

System.exit(0);
// 关闭,退出程序

3) 要拖动窗体的功能:
只要给窗体中的某个组件添加如下代码就行了:

Point loc = null; Point tmp = null; boolean isDragged = false; private void setDragable() { this.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseReleased(java.awt.event.MouseEvent e) { isDragged = false; jFrame.setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); } public void mousePressed(java.awt.event.MouseEvent e) { tmp = new Point(e.getX(), e.getY()); isDragged = true; jFrame.setCursor(new Cursor(Cursor.MOVE_CURSOR)); } }); this.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() { public void mouseDragged(java.awt.event.MouseEvent e) { if(isDragged) { loc = new Point(jFrame.getLocation().x + e.getX() - tmp.x, jFrame.getLocation().y + e.getY() - tmp.y); jFrame.setLocation(loc); } } }); } 在初始化该组件的时候调用 setDragable() 就可以使组件具体拖放窗体的功能了。因为可能有背景图,可能会重写paint方法,不能在paint方法中调用setDragable()

回答2:

JDialog对象可以 JRrame对象好像不可以