Java GUI:对象和标签不可见 我想创建一个简单的图形用户界面,在窗口的前第三个中画出一个椭圆,在中间第三显示一个名字,然后在底部第三中画一个矩形(以后要做)

Java GUI:对象和标签不可见 我想创建一个简单的图形用户界面,在窗口的前第三个中画出一个椭圆,在中间第三显示一个名字,然后在底部第三中画一个矩形(以后要做),java,user-interface,labels,Java,User Interface,Labels,到目前为止,我唯一能够创建并使其可见的部分是四个按钮,它们最终用于切换对象和标签的可见性 我遇到的问题是,我不能让标签或椭圆形出现,我不确定我错过了什么,以防止两者都可见 import java.awt.*; 导入java.awt.event.*; 导入javax.swing.*; 导入java.util.*; 导入java.io.*; 公共类Gui扩展JFrame 实现ActionListener { 私有JButton-bottomLeftButton; 私有JButton-bottomi

到目前为止,我唯一能够创建并使其可见的部分是四个按钮,它们最终用于切换对象和标签的可见性

我遇到的问题是,我不能让标签或椭圆形出现,我不确定我错过了什么,以防止两者都可见

import java.awt.*;
导入java.awt.event.*;
导入javax.swing.*;
导入java.util.*;
导入java.io.*;
公共类Gui扩展JFrame
实现ActionListener
{
私有JButton-bottomLeftButton;
私有JButton-bottomidleftbutton;
私有JButton bottomRightButton;
私有JButton底部中间右侧按钮;
私人事务委员会;
私有JLabel名称;
私人JPanel panelOne;
私有布尔可见;
已执行的公共无效操作(操作事件e)
{
如果(例如getSource()==bottomLeftButton)
{
visible=name.isVisible();
name.setVisible(可见);
}
else if(例如getSource()==bottomMiddleftButton)
{
}
else if(例如getSource()==bottomMiddleRightButton)
{
}
else if(例如getSource()==bottomRightButton)
{
}
重新油漆();
}
公共图形用户界面()
{
setTitle(“第一个GUI”);
设置大小(800800);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
容器contentPane=this.getContentPane();
setLayout(新的BorderLayout());
JPanel底部面板=新JPanel(新网格布局(1,4));
添加(底部面板,BorderLayout.SOUTH);
bottomLeftButton=新JButton(“名称”);
addActionListener(这个);
BottomPanel.add(bottomLeftButton);
BottomMiddleftButton=新的JButton(“椭圆形”);
addActionListener(这个);
底部面板。添加(底部中间左侧按钮);
bottomMiddleRightButton=新的JButton(“方形”);
bottomMiddleRightButton.addActionListener(此);
底部面板。添加(底部中间右侧按钮);
bottomRightButton=新的JButton(“特殊”);
addActionListener(这个);
底部面板。添加(底部右侧按钮);
JPanel centerPanel=新的JPanel();
centerPanel.setLayout(新网格布局(3,1));
panelOne=新的其他面板();
名称=新的JLabel(“名称”);
名称。设置水平对齐(SwingConstants.CENTER);
JLabel label3=新的JLabel(“label3”);
中心面板。添加(面板一);
中心面板。添加(名称);
添加(标签3);
}
公共静态void main(字符串[]args)
{
Gui=新Gui();
setVisible(true);
}

}
缺少将对象添加到contentPane的一行代码


contentPane.add(中心面板);在添加/删除组件时,转到gui()方法的末尾

调用revalidate,然后重新绘制;在进行任何自定义绘制之前,请调用super.paintComponent;重写getPreferredSize以提供布局管理器的大小提示。或者,在将gui实例设置为可见之前,您应该
pack()