首页 > 电脑

JFrame如何实现窗口最大化,最小化和还原?

更新时间2018-03-06 16:37:34

不要长篇大论,只要一句代码,例子:

JFrame.setExtendedState(JFrame.NORMAL);

答:  很多时候做java图形界面时, 都会觉得外观和皮肤需要改进美化,  所以通常会去掉边框. 然后自定义边框, 但是副作用就是右上角的 最小化, 最大化, 关闭 按钮没有了,  需要我们自己写3个按钮去实现 这些功能.  

最小化核心代码

1   jframe.setExtendedState(JFrame.ICONIFIED);//窗口最小化  

效果图


参考代码

12345678910111213141516171819202122232425262728293031323334353637383940   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);//退出程序        }    }  }  


上一篇:微信可以发单独的文字朋友圈吗,就是不带图片的那种

下一篇:请求大神改像素,加文字