添加的JLabel到一個JFrame我有2個班,使用組件
我主要的類創建一個框架,我想另一個類將內容添加到它。一些閱讀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);
}
我的組件類創建一個JLabel
public class Component1 extends JComponent {
public void paintComponent()
{
JLabel label = new JLabel("<html>Some Text</html>");
}
}
我沒有得到任何編譯錯誤,但是我沒有得到我的JFrame中的任何文字。
任何人都可以解釋我做錯了什麼?
克里斯
我沒有看到JPanel – DrinkJavaCodeJava
你在哪裏添加JLable? – Smit
'公共類的Component1擴展JComponent的{ 公共無效paintComponent() { JLabel的標記=新的JLabel( 「某些文本」); } }改爲使用'JLabel'實例。在啓動時給它「」的文字。稍後設置文本,它將變爲可見。作爲一般技巧,不要在..中創建對象。我正要說'paintComponent(Graphics)',除了沒有一個。 –