使用WindowBuilder动态创建JButton

时间:2015-07-10 09:30:45

标签: java user-interface jbutton jlabel windowbuilder

在Eclipse中,我使用WindowBuilder开发GUI。我正在尝试动态创建并向面板添加按钮和标签,然后在按下另一个按钮时更新GUI以显示下一组按钮/标签。

我一直在努力工作几个小时,但却无法让它发挥作用。我的代码是成功生成前5个按钮,但是当我单击“下一步”(应该更新GUI的按钮)时,它不起作用。但是,我正在使用sysout.println并且可以看到我正在尝试更改的JLabel的实际文本值正在发生变化,它只是不在GUI上更新。 GUI最终会从数据库读取数据并根据它填充标签/按钮,但最初我只是想让它与手动创建的对象一起工作。

1 个答案:

答案 0 :(得分:1)

这就是我创建动态JRadioButton的方式:

            private void createJButton (int numOfBotons)
        {
            int x=20, y=300, width=40, height=50; //choose whatever you want
            JRadioButton[] jRadioButton = new JRadioButton[numOfBotons];
            for(int i=0; i<numOfBotons; i++, y-=20) 
            {
                jRadioButton[i] = new JRadioButton(""+i);
                jRadioButton[i].setBounds(x, y, width, height);
                group.add(jRadioButton[i]);
                frame.add(jRadioButton[i]);

            }

        }