You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swing按钮点击执行计算方法未获取文本框最新值问题

问题原因

你定义的numX、numY两个变量仅在窗口初始化(执行initialize方法)时,读取了一次文本框的初始值(也就是你预设的"1")完成赋值。后续你在界面上修改文本框的内容时,这两个局部变量的值不会自动同步更新,按钮点击事件里调用计算方法时用的始终是初始化时保存的旧值,才会出现结果不变的问题。

修复方案

将读取文本框最新值的逻辑挪到按钮的点击事件回调中,每次点击计算按钮时,再主动获取当前文本框的内容转成数值参与计算即可。

修改后的按钮监听代码示例:

JButton submitBtn = new JButton("Calculate Percentage");
submitBtn.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        // 每次点击时读取最新的文本框值
        double numX = Double.parseDouble(textField.getText());
        double numY = Double.parseDouble(textField_1.getText());
        double result = calcdUp(numX,numY);
        results.setText(numX + " is " + result + " percent of " + numY);
    }
});

同时可以把原来initialize方法里定义在文本框初始化后面的double numX = ...、double numY = ...两行代码删除,避免冗余。

内容的提问来源于stack exchange,提问作者MCIT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 17:30:05