使用组件将jlabel添加到jframe
我有两节课
我的主要班级创建了一个框架,我希望另一个班级为其添加内容。一读arroudn告诉我,我应该使用组件来执行此操作,但是当我运行代码时,框架为空。
public static void main(String[] args) {
// create frame
JFrame frame = new JFrame();
final int FRAME_WIDTH = 800;
final int FRAME_HEIGHT = 600;
// set frame attributes
frame.setSize(FRAME_WIDTH, FRAME_HEIGHT);
frame.setTitle("My Frame");
frame.setVisible(true);
Component1 Com = new Component1();
Component add = frame.add(Com);
}
我的Component类创建一个JLabel
public class Component1 extends JComponent { public void paintComponent()
{
JLabel label = new JLabel("<html>Some Text</html>");
}
}
我没有任何编译错误,但是我的JFrame中没有任何文本。
谁能解释我在做什么错?
克里斯
回答:
您需要 添加
的JLabel
。最好扩展JPanel
而不是扩展,JComponent
因为它具有默认的布局管理器,并且无需设置组件大小即可显示任何添加的组件。paintComponent
用于自定义绘画BTW。
public class Component1 extends JPanel { Component1() {
JLabel label = new JLabel("<html>Some Text</html>");
add(label);
}
}
以上是 使用组件将jlabel添加到jframe 的全部内容, 来源链接: utcz.com/qa/404403.html