swing的组件默认不显示,拖动窗口大小才显示

本文探讨了Java Swing中组件默认不显示的问题,指出在初始化窗口时应将setVisible(true)放置到最后,以避免需要拖动窗口才能使组件正常显示的异常情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

初始化窗口时,尽量把setVisible(true);放到最后面,否则可能会出现以下情况:
在这里插入图片描述
拖动窗口并调整大小后又正常显示:
在这里插入图片描述
出现这种情况的代码如下:

package com.seven;

import javax.swing.*;
import java.awt.*;

public class Test {
    public static void main(String[] args) {
        new MyJFrameTest();
    }
}
class MyJFrameTest extends JFrame{
    public MyJFrameTest()  {
    	setVisible(true);
        setBounds(100,100,500,500);
        Container contentPane = getContentPane();
        ImageIcon icon = new ImageIcon("D:\\IdeaProjects\\gui_demo\\src\\com\\seven\\icon\\icon.png");
        JLabel jLabel = new JLabel(icon);
        jLabel.setHorizontalAlignment(SwingConstants.CENTER);
        contentPane.add(jLabel);
        

    }
}


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值