我有一个问题,添加一个特定数量的按钮从我的for循环到我的jpanel,我知道如何添加所有oof他们,但我只想添加1-10(我还没有决定,让我们去10)。'
这是我的类,我只声明我想要的对象。
private static int cID;
private static Deck[] card;
static ArrayList<JButton> buttonList = new ArrayList<JButton>();
private JFrame f;
private JPanel p1;
private JButton button;
public boolean isEmpty() {
return cID == 0;
}
public static void main(String[] args) {
CustomDecks c = new CustomDecks();
c.deckCreator();
}```
这是我的for循环,我创建了420个按钮,并给它们命名为“card”+i,其中我是0-419,但当我试图添加card0到我的面板,它失败了,为什么?
private void deckCreator() {
card = new Deck[25];
new ArrayList<Cards> (cSet.cards);
for(int i = 0; i < 420; i++) {
button = new JButton();
buttonList.add(button);
button.setName("card" + i);
f.add(button);
p1.add(card0);
}
f.add(p1);
f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
f.setVisible(true);
f.setExtendedState(Frame.MAXIMIZED_BOTH);
f.setUndecorated(true);
}
}
}
1条答案
按热度按时间iqih9akk1#
我不确定你能不能创造一个
JPanel
足够容纳420人JButtons
.下面是一个
JButton
图形用户界面。[
通常,您要分别创建应用程序模型和视图。该模型由一个或多个纯java类组成。视图读取应用程序模型,但不更新模型。
您的控制器类(
ActionListener
类)更新应用程序模型并更新/重新绘制视图。这种模式称为模型/视图/控制器(model/view/controller,mvc)模式。
您可以在下面的示例代码中看到,模型是在视图类构造函数中创建的。通常,首先创建应用程序模型,然后创建应用程序视图。
下面是完整的可运行代码。