ABCHERRY7 2017-10-19 16:38 采纳率: 0%
浏览 394

java JLabel最大化程序一开始运行点击不起作用

这个按钮的功能就是实现,点击它窗口就最大化,再点击它窗口就还原。这在这两个状态切换。

但我的 java程序一开始运行,点击JLabel最大化按钮,不起作用,要先点击了最小化后,再点最大化才起作用。

代码如下:请各位大神赐教

 /**
     * 最大化按钮
     */
    public void maximizeButton(){
        JLabel maxButton = new JLabel();
        maxButton.setBounds(220,474,28, 28);
        maxButton.setIcon(new ImageIcon(default_max));
        frameBackground.add(maxButton);
        maxButton.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseEntered(MouseEvent e) {
                // TODO Auto-generated method stub
                maxButton.setIcon(new ImageIcon(hover_max));
            }
            @Override
            public void mouseExited(MouseEvent e) {
                // TODO Auto-generated method stub
                maxButton.setIcon(new ImageIcon(default_max));
            }
            @Override
            public void mouseClicked(MouseEvent e) {
                // TODO Auto-generated method stub

                if(getFrameState() == 22){
                    restore();
                }else if(getFrameState() == 33){
                    max();
                }else if(getFrameState() == 44){
                    max();
                }
            }
        });
    }
    /**
     * 获取窗口状态
     */
    public int getFrameState(){
        jFrame.addWindowStateListener(new WindowStateListener() {

            @Override
            public void windowStateChanged(WindowEvent state) {
                // TODO Auto-generated method stub

                if(state.getOldState() == JFrame.NORMAL) {
                    jFrameState = 22;//旧窗口正常
                }else if(state.getNewState() == JFrame.NORMAL) {
                    jFrameState = 33;//新窗口恢复到初始状态
                }else if(state.getNewState() == JFrame.MAXIMIZED_BOTH) {
                    jFrameState = 44;//新窗口最大化
                }
            }
        });
        return jFrameState;
    } 
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 保护模式-系统加载-段寄存器
    • ¥15 电脑桌面设定一个区域禁止鼠标操作
    • ¥15 求NPF226060磁芯的详细资料