java - JLabel 未显示在 JPanel 上

标签 java swing jframe jpanel jlabel

出于某种原因,即使我已经在代码中实现了验证方法,并将 JPanel 添加到了 JFrame 中。我还试图让我的 JLabel 具有 Comic Sans 字体,并使其位于屏幕中央。为什么我的 JLabel 没有显示在我的 JPane 上

package math_program;

import java.awt.Color;
import java.awt.Font;
import java.util.Random;
import javax.swing.*;
import static javax.swing.JFrame.EXIT_ON_CLOSE;

public class Canvas 
{
    Images obj = new Images();

    public void paintFrame()
    {
        //Instantiation of objects
        Random gen = new Random();
        JFrame frame = new JFrame();
        JPanel panel = new JPanel();

        //Text
        JLabel problem = new JLabel();

        frame.setVisible(true);
        frame.setAlwaysOnTop(true);
        frame.setResizable(false);
        frame.setDefaultCloseOperation(EXIT_ON_CLOSE); //Make frame actually closeable
        frame.setTitle("Math Owl: Alpha V:0.1 (coded by John)");
        frame.setSize(800, 500);
        frame.setLocationRelativeTo(null);
        frame.add(panel); //Add JPanel to JFrame
        panel.setVisible(true);
        panel.setLayout(null);
        panel.setBackground(Color.WHITE); //To see if text is even appearing

        //Adding Components
        problem.setFont(new Font("Comic Sans MS", Font.PLAIN, 20));
        problem.setLocation(400,250);
        problem.setText(gen.nextInt(11) + " + " + gen.nextInt(11));
        panel.add(problem);
        panel.validate();

    }

}

最佳答案

正如copeg所说,使用合适的布局管理器。即使是默认的布局管理器(流布局)也可以使用。只需删除 panel.setLayout(null);,您的 JLabel 就会显示出来。

此外,当我尝试您的代码片段时,Images obj = new Images();也出现问题,我假设您已经在包中以某种方式定义了 Images 类。 `

关于java - JLabel 未显示在 JPanel 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30400983/

相关文章:

Java线程程序在for循环之前退出(程序的服务器端)(Eclipse使用Mac终端/命令行参数)

java - 打印重复的数据集

java - 单击时在 JButton 上绘制一个椭圆

Java Swing 更改 1 个 JFrame 中多个 JPanel 中 JTextField 的上下文

java - 将 JPanel 类放入另一个类的 JFrame 中

java - 如何使用 JDA 添加多个 react 来嵌入消息

c# - 您是针对特定问题编写异常(exception)还是一般异常(exception)?

java - 如何在 JPanel 中放置带有 jmathplot 图的 JFrame

java - 从Java Spark到ElasticSearch的连接数

java - 防止主 UI 从子线程崩溃