如何让Panel进入框架。我已经尝试了好几个小时而且没有得到它。
我尝试了JPanel panel = new TopPanel();
,但它不会调用帧。一周前,我们的老师教给我们初学者课程,从那以后,我一直很困惑。
感谢您提前帮助,请解释。
框架:
public class CourseGUI extends JFrame {
public CourseGUI()
{
super("CourseGUI Frame");
JPanel topPanel = new JPanel();
topPanel.setBackground(java.awt.Color.WHITE);
Dimension d = new Dimension(800,600);
topPanel.setPreferredSize(d);
this.setLayout(new BorderLayout());
this.add(topPanel, BorderLayout.NORTH);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(800,600);
//JPanel tp = new TopPanel();
//this.add(tp.BorderLayout.North);
JPanel panel = new TopPanel();
this.setVisible(true);
}
public static void main(String[] args)
{
new CourseGUI();
}
}
小组(假设位于顶部)
import javax.swing.*;
import java.awt.*;
public class TopPanel extends JPanel {
public TopPanel() {
JPanel panel = new JPanel();
JLabel Crse = new JLabel("Course Info");
Crse.setFont(new Font("Serif", Font.PLAIN, 14));
panel.add(Crse);
}
}
答案 0 :(得分:0)
在TopPanel类中,您只需将标签添加到另一个JPanel对象面板中,此面板不会添加到TopPanel中。我在你的TopPanel课上做了一些改动。 (如果需要,您可以更改布局)
import javax.swing.*;
import java.awt.*;
public class TopPanel extends JPanel {
public TopPanel() {
JLabel Crse = new JLabel("Course Info");
Crse.setFont(new Font("Serif", Font.PLAIN, 14));
add(Crse);
}
}
在CourseGui中使用此TopPanel
JPanel topPanel = new TopPanel();
如果有效,请尝试接受
您也可以使用
JPanel topPanel = new JPanel();
JLabel Crse = new JLabel("Course Info");
Crse.setFont(new Font("Serif", Font.PLAIN, 14));
topPanel.add(Crse);