调用jframe的什么方法使窗口最小化
1个回答
展开全部
答: 很多时候做java图形界面时, 都会觉得外观和皮肤需要改进美化, 所以通常会去掉边框. 然后自定义边框, 但是副作用就是右上角的 最小化, 最大化, 关闭 按钮没有了, 需要我们自己写3个按钮去实现 这些功能.
最小化核心代码
jframe.setExtendedState(JFrame.ICONIFIED);//窗口最小化
效果图
参考代码
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JTFDemo extends JFrame implements ActionListener{
JButton jb1,jb2,jb3;
public JTFDemo() {
JPanel jp = new JPanel(new FlowLayout(FlowLayout.RIGHT));//流式布局,从右边开始
jb1 = new JButton("小");
jb1.addActionListener(this);
jb2 = new JButton("大");
jb2.addActionListener(this);
jb3 = new JButton("关闭");
jb3.addActionListener(this);
jp.add(jb1);
jp.add(jb2);
jp.add(jb3);
add(jp);
//窗口属性设置
setUndecorated(true);// 不绘制边框
setSize(500, 230);// 窗口大小
setLocationRelativeTo(null);// 窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);// 窗口点击关闭时,退出程序
setVisible(true);// 窗口可见
}
public static void main(String[] args) {
new JTFDemo(); //创建窗口并显示
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==jb1) {
setExtendedState(ICONIFIED);//窗口最小化
}else if(e.getSource()==jb2) {
setExtendedState(MAXIMIZED_BOTH);//窗口最大化
}else if(e.getSource()==jb3) {
System.exit(0);//退出程序
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询