Java GUI JPanel不工作
我真的不明白为什么这个JPanel“p”没有出现? 我认为我为JPAND P编码在JFrAMP的中间,应该使整个JFrice红,但它似乎不这样做,按钮和JPAND不出现。很抱歉我知道我可能很笨,但请帮帮我好吗? 这是代码Java GUI JPanel不工作,java,user-interface,Java,User Interface,我真的不明白为什么这个JPanel“p”没有出现? 我认为我为JPAND P编码在JFrAMP的中间,应该使整个JFrice红,但它似乎不这样做,按钮和JPAND不出现。很抱歉我知道我可能很笨,但请帮帮我好吗? 这是代码 package com.gorillalogic.henry; import java.awt.BorderLayout; import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.ev
package com.gorillalogic.henry;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Notepad {
private JFrame f; // creates all GUI components
private JPanel p;
private JButton b1;
public Notepad() {
gui();
}
public void gui() {
f = new JFrame("Notepad");
p = new JPanel();
b1 = new JButton("Quit");
b1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
f.setSize(600, 400);
f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
p.setBackground(Color.RED);
p.add(b1);
f.add(p, BorderLayout.CENTER);
}
public static void main(String[] args) {
new Notepad();
}
}
提前感谢。:)
你需要这样做
您需要这样做。您的代码似乎工作正常。可能尝试调用f.setVisible(true)在gui()
方法的末尾添加code>,以便在显示之前将所有组件添加到框架中。谢谢!)这很有效。这可能会有点不同,因为我在Mac电脑上运行前面的代码?你的代码似乎工作得很好。可能尝试调用f.setVisible(true)在gui()
方法的末尾添加code>,以便在显示之前将所有组件添加到框架中。谢谢!)这很有效。这可能会有点不同,因为我在Mac电脑上运行前面的代码?疑惑的
p.setOpaque(true);