我正在使用Ubuntu,当运行基本的Swing程序时,输出不是完全可见的。输出无法看到标签或按钮等组件。代码为
import javax.swing.*;
import java.io.*;
public class Swing1 extends JFrame
{
public static void main(String args[])
{
JFrame jr=new JFrame("Hello World!");
JLabel l=new JLabel("FirstOne");
JButton b=new JButton("End");
// l.setBackground(Color.BLACK);
jr.add(l);
jr.add(b);
jr.setVisible(true);
jr.setSize(800,300);
jr.setLayout(null);
jr.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
我收到输出屏幕,但标签没有显示,按钮我的操作系统是ubuntu。
答案 0 :(得分:0)
您不应该使用jr.setLayout(null)
,因为这意味着您必须使用绝对定位。
您可以查看Java的可用Layout Managers,了解哪种布局适合您。
您可以使用FlowLayout
,例如jr.setLayout(new FlowLayout())
,这样您的标签和按钮就会显示。
import javax.swing.*;
import java.io.*;
import java.awt.*; //So you can use the Layout Managers
public class Swing1 extends JFrame
{
public static void main(String args[])
{
JFrame jr=new JFrame("Hello World!");
JLabel l=new JLabel("FirstOne");
JButton b=new JButton("End");
jr.add(l);
jr.add(b);
jr.setVisible(true);
jr.setSize(800,300);
jr.setLayout(new FlowLayout());
jr.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}