如何在Java中将数值分配给JRadiobuttons并将其用作乘法器?
我想用文本字段和单选按钮制作一个简单的计算器。我已经有3个文本字段和一个“计算”按钮,动作侦听器正在工作。但是现在我想添加3个新的单选按钮分组,将值1、10和1000作为相互排除的乘数(我希望它们将最终结果相乘,但我只想使用如何在Java中将数值分配给JRadiobuttons并将其用作乘法器?,java,swing,jradiobutton,Java,Swing,Jradiobutton,我想用文本字段和单选按钮制作一个简单的计算器。我已经有3个文本字段和一个“计算”按钮,动作侦听器正在工作。但是现在我想添加3个新的单选按钮分组,将值1、10和1000作为相互排除的乘数(我希望它们将最终结果相乘,但我只想使用JButton作为动作执行器,而不是单选按钮) 代码的相关部分如下所示: JButton btnNewButton = new JButton("calculate!"); btnNewButton.addActionListener(new ActionListener()
JButton
作为动作执行器,而不是单选按钮)
代码的相关部分如下所示:
JButton btnNewButton = new JButton("calculate!");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
double x, y, z, result;
x= Double.parseDouble(textField.getText());
y= Double.parseDouble(textField_1.getText());
z= Double.parseDouble(textField_2.getText());
result = x * y * z;
textField_3.setText(Double.toString(your result is));
}
});
您可以将JRadioButtons与ButtonGroup一起使用,如:
final ButtonGroup group = new ButtonGroup();
final JRadioButton btn1 = new JRadioButton("1");
final JRadioButton btn10 = new JRadioButton("10");
final JRadioButton btn1000 = new JRadioButton("1000");
group.add(btn1);
group.add(btn10);
group.add(btn1000);
...
public void actionPerformed(ActionEvent arg0) {
double x, y, z, result;
x= Double.parseDouble(textField.getText());
y= Double.parseDouble(textField_1.getText());
z= Double.parseDouble(textField_2.getText());
result = x * y * z;
if (btn10.isSelected()) result *= 10;
if (btn1000.isSelected()) result *= 1000;
textField_3.setText(Double.toString(result));
}
您可以将JRadioButtons与ButtonGroup一起使用,如:
final ButtonGroup group = new ButtonGroup();
final JRadioButton btn1 = new JRadioButton("1");
final JRadioButton btn10 = new JRadioButton("10");
final JRadioButton btn1000 = new JRadioButton("1000");
group.add(btn1);
group.add(btn10);
group.add(btn1000);
...
public void actionPerformed(ActionEvent arg0) {
double x, y, z, result;
x= Double.parseDouble(textField.getText());
y= Double.parseDouble(textField_1.getText());
z= Double.parseDouble(textField_2.getText());
result = x * y * z;
if (btn10.isSelected()) result *= 10;
if (btn1000.isSelected()) result *= 1000;
textField_3.setText(Double.toString(result));
}
谢谢你的宝贵建议!谢谢你的宝贵建议!