我是JFrame
的新手,正在设计一个应用程序...我创建了16个复选框,每个复选框都分配了不同的值...现在我的问题是当JCheckBox
被选中时我想要在JFormattedTextField
...
我添加了像这样的复选框
JCheckBox[] jbx = new JCheckBox[16];
for(int i = 0; i < jbx.length; i++) {
if(i%2 == 0) {
jbx[i].setBounds(x_axis-300,y_axis,300,40);
panel.add(jbx[i]);
} else {
jbx[i].setBounds(x_axis,y_axis,300,40);
panel.add(jbx[i]);
y_axis += 30;
}
}
任何人都可以帮我做这个......?
...编辑
我使用了这段代码
b.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
System.out.println(e.getStateChange() == ItemEvent.SELECTED ? "Selected" : "Deselected");
}
});
当我尝试算术而不是打印时,它没有用......
答案 0 :(得分:2)
setBounds(...)
这使得非常不灵活的GUI虽然在一个平台上看起来不错但在大多数其他平台或屏幕分辨率上看起来很糟糕而且非常困难更新和维护。相反,您将需要学习和学习布局管理器,然后嵌套JPanel,每个JPanel都使用自己的布局管理器来创建在所有操作系统上看起来都很好的令人愉悦且复杂的GUI。您当前的代码表明您希望使用包含2列的GridLayout。