这个问题在这里已经有了答案:
如何将jspinner和双变量相乘(1个答案)
29天前关门了。
// amount JLabels
JLabel amount0 = new JLabel("Amount");
JSpinner amount1= new JSpinner(new SpinnerNumberModel(0,0,50,1));
JSpinner amount2= new JSpinner(new SpinnerNumberModel(0,0,50,1));
JSpinner amount3 = new JSpinner(new SpinnerNumberModel(0,0,50,1));
JSpinner amount4= new JSpinner(new SpinnerNumberModel(0,0,50,1));
JSpinner amount5 = new JSpinner(new SpinnerNumberModel(0,0,50,1));
//cost JLabels
JLabel cost0 = new JLabel("Cost");
int price = 2;
int value = (Integer)(amount1.getValue());
int total = price * value;
JLabel cost1 = new JLabel();
cost1.setText( "$" +total);
这段代码给了我微调器的初始值并将其乘以价格,但我希望它在更新时记录更新的值并将其乘以价格。有什么建议吗?
1条答案
按热度按时间noj0wjuj1#
但我希望它在更新时记录更新后的值,并将其与价格相乘。
你需要添加一个
ChangeListener
对每个JSpinner
.值更改时将生成一个事件,然后您可以响应该事件。
请阅读swing教程中有关检测微调器值更改的部分,了解一个工作示例。
注意,这是swing的工作方式。可以将不同的侦听器添加到每个swing组件以侦听用户交互。
本教程提供了所有swing组件的基本示例。
本教程还有一节介绍如何为您应该阅读的常见处理事件实现侦听器。