微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当我第一次调用一个对象时,我的 JFrame 是空白的

如何解决当我第一次调用一个对象时,我的 JFrame 是空白的

我看到了一件奇怪的事情。当我在调试模式下运行代码并通过单击按钮调用此行时:

 popup.setVisible(true);

我看到一个没有上下文的空白窗口 (popupConfig)。我该怎么做才能使用这个 popupConfig 一次性显示我的 popupVisible(true)

主要

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;

public class PopupConfig  extends JFrame 
{
    private final static Color backgroundColor = new Color(0,51,102);
    
    private final static Font customeFont = new Font("Arial",Font.BOLD,18);
    
    public PopupConfig() 
    {
        setTitle("TEST");
        setAlwaysOnTop(true);
        setSize(600,500);
        setLocation(400,400);
        getContentPane().setLayout(null);
        getContentPane().setBackground(backgroundColor);
        setDefaultCloSEOperation(JFrame.disPOSE_ON_CLOSE);

        JLabel lblSeting = new JLabel("SETTINGS");
        lblSeting.setHorizontalAlignment(SwingConstants.CENTER);
        lblSeting.setFont(new Font("Arial",42));
        lblSeting.setForeground(Color.WHITE);
        lblSeting.setSize( 331,49 );
        lblSeting.setLocation( 114,11 );
        getContentPane().add(lblSeting,BorderLayout.norTH);
    }
}

PopupConfig

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;

public class PopupConfig  extends JFrame 
{
    private final static Color backgroundColor = new Color(0,102);
    private final static Font customeFont = new Font("Arial",18);

    public PopupConfig() 
    {
        setTitle("TEST");
        setAlwaysOnTop(true);
        setSize(600,BorderLayout.norTH);
    }
}

窗口

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;

public class Window  extends JFrame implements ActionListener{
    
    private JButton btn;
    private PopupConfig popup;
    
    public Window()
    {
        setTitle("TEST");
        setAlwaysOnTop(true);
        setSize(600,400);
        getContentPane().setLayout(null);
        getContentPane().setBackground(new Color(0,102) );
        setDefaultCloSEOperation(JFrame.disPOSE_ON_CLOSE);
         
        btn = new JButton("TEST");
        
        btn.addActionListener(this);
        btn.setBounds(200,200,200);
        add(btn);
        
        popup = new PopupConfig();
    }

    @Override
    public void actionPerformed(ActionEvent arg0) {
        popup.setVisible(true);
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。