java单击按钮清除文本,java – 单击按钮时增加值并使用该值更新文本字段

这篇博客探讨了一个Java图形用户界面(GUI)应用中遇到的问题,即按钮点击后文本字段的计数器未能正确更新。作者指出,由于在`actionPerformed`方法内部重新声明并初始化了变量,导致每次点击按钮时计数器重置为0。解决方案是将变量声明为类的成员变量,以保持其状态。博客还提到了防止超过最大选择数量的限制,并展示了错误消息提示的实现。
摘要由CSDN通过智能技术生成

我被困在一项任务中,每次用户点击按钮时我都需要更新文本字段.总共有5个按钮,每个按钮都有自己的文本字段,单击它们时应该更新.我遇到的问题是,当多次单击时,计数器似乎不会更新文本字段.因此,当我第一次单击该按钮时,文本字段将显示“1”,但在多次单击后仍保持相同状态.

private class ButtonListener implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

int snickers = 0;

int butterfinger = 0;

int lays = 0;

int coke = 0;

int dietCoke = 0;

int totalItems = 0;

double totalPrice = (totalItems * PRICE);

if (e.getSource() == snickersButton)

{

totalItems++;

snickers++;

quantityTextS.setText(String.valueOf(snickers)); //Display snickers value in text field

itemsSelectedText.setText(String.valueOf(totalItems)); //Display total items value in text field

if(snickers > MAX)

{

JOptionPane.showMessageDialog(null, "The maximum number of each item that can be selected is 3.",

"Invalid Order Quantity", JOptionPane.ERROR_MESSAGE);

quantityTextS.setText("3"); //Set text to 3

}

}

最佳答案 这是因为您将snickers和totalItems声明为actionPerformed方法的本地字段,因此每次单击时都会创建并初始化为0.考虑以下方法之一:

>将这些字段设为类的静态字段

>从当前按钮获取士力架和totalItems,将它们解析为int值并根据这些值进行计算

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值