簡體   English   中英

將對象添加到jframe java

[英]add Objects to jframe java

我在我的包中創建了兩個名為ball和toop的類。 並想將它們添加到我的第三堂課中,擴展了JFrame。 我做到了,但是當我使用Container時,對象沒有顯示在JFrame中。 如果沒有Container,則僅將其中一個添加到JFrame中。 這是我的代碼:

package mytry;

import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import javax.swing.*;
public class trypanel extends JFrame {
JFrame frame = new JFrame();
Container panel = new Container();
public trypanel(){
    toop c = new toop();
    ball a = new ball(20,20,1);
    frame.setVisible(true);
    frame.setSize(550,550);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    panel.add(c);
    panel.add(a);
    frame.getContentPane().add(panel);
    c.run();

}
}

如何將我的類添加到JFrame中?

由於您的類擴展了JFrame,因此應刪除此行:

JFrame frame = new JFrame();

這意味着所有對框架的引用也應刪除或更改為此。

而是在使用Container時要使用JPanel,因此更改此行:

Container panel = new Container();

JPanel panel = new JPanel();

並將面板添加到構造函數中的框架中,如下所示:

this.add(panel);

而不是使用frame.getContentPane()。add(panel);

即使我沒有嘗試過您的代碼,也應該可以。

您可能還希望將LayoutManager與JPanel一起使用,以確保事物的正確布局。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM