当我尝试使用setLayout(null)时,出现了纯灰色屏幕,并且没有任何组件。我是否需要给ColorPanel中的每个组件一个x,y值?
import javax.swing.*;
import java.awt.*;
public class GUI{
public static void main(String[] args){
JFrame GUI = new JFrame();
GUI.setLayout(null);
GUI.setTitle("Betrai");
GUI.setSize(500, 500);
GUI.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ColorPanel panel = new ColorPanel(Color.white);
Container pane = GUI.getContentPane();
JButton continueButton = new JButton("TEST");
continueButton.setBackground(Color.red);
continueButton.setBounds(10, 10, 60, 40);
pane.add(continueButton);
GUI.setVisible(true);
GUI.setBounds(0, 0, 500, 500);
GUI.setResizable(false);
}
}
最佳答案
我尝试了代码,就像您指定的一样,我可以看到您的按钮!
您需要将ColorPanel
添加到布局并设置边界(就像您对测试按钮所做的一样)。
panel.setBounds(50, 50, 100, 100);
pane.add(panel);
但是您不应该使用
null
布局。几乎总是有另一种布局可以满足您的需求!关于java - Java空布局导致空白屏幕,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5899877/