【发布时间】:2026-01-19 20:05:01
【问题描述】:
我正在尝试在我在一个类中计算的 texArea 中创建这样的计算,然后我将它传递给另一个类以执行下一个计算,只需单击按钮。因此,如果我单击“m10py”,我在 TextArea 中的任何内容都将减少 0.10。我尝试了一切,但它似乎不起作用。它不会引发任何错误,但 TextArea 中的总数保持不变。 我的主要类,它执行基本计算。
public void actionPerformed(ActionEvent e) {
double frontM = 9.50;
double middleM = 7.30;
double backM = 6.70;
double vipM = 12.90;
//double total1 = Double.parseDouble(output.getText());
if (frontR.isSelected() && e.getSource() == calculate) {
double total = Integer.parseInt(frontT.getText()) * frontM;
output.setText(pounds.format(total));
} else if (middleR.isSelected() && e.getSource() == calculate) {
double total = Integer.parseInt(middleT.getText()) * middleM;
String total2 = String.valueOf(total);
output.setText(total2);
} else if (backR.isSelected() && e.getSource() == calculate) {
double total = Integer.parseInt(backT.getText()) * backM;
output.setText(pounds.format(total));
} else if (vipR.isSelected() && e.getSource() == calculate) {
double total = Integer.parseInt(vipT.getText()) * vipM;
output.setText(pounds.format(total));
} else if (e.getSource() == cancel) {
frontT.setText("1");
middleT.setText("1");
backT.setText("1");
vipT.setText("1");
output.setText("");
}
if (e.getSource() == payment) {
Payment paymentJ = new Payment();
paymentJ.output.setText(output.getText());
}
}
计算传递到不同 textArea 的第二类。我没有为每个按钮都这样做,因为我无法计算.. ;
public void actionPerformed(ActionEvent e) {
Main main = new Main();
// double totalR = Double.parseDouble(output.getText());
String cost = main.output.getText();
double cost2 = Double.parseDouble(cost);
double total;
total = cost2;
double m10py = 0.10;
double m20py = 0.20;
double m50py = 0.50;
double m1p = 1.00;
double m2p = 2.00;
double m5p = 5.00;
double m10po = 10.00;
double m20po = 20.00;
if (e.getSource() == m10p) {
total = total - m10py;
String total2 = String.valueOf(total);
output.setText(total2);
}
}
我对此很陌生,所以请不要对我进行尝试。我只需要知道这有什么问题。谢谢
【问题讨论】:
-
如果您创建并发布了一个有效的minimal reproducible example 会很有帮助,这是一个小而完整的程序,只有必要的代码来演示您的问题,我们可以复制、粘贴、编译和运行而无需修改,因为这将帮助我们充分了解您可能做错了什么。请注意,这是作为代码格式文本发布的代码,而不是作为到场外资源的链接。
-
我确实说明了问题所在,并在下面链接了必要的代码,这是在“actionPerformed”方法中执行计算真正需要的代码。任何其他编码都将是不必要的,它们只是框架等的属性......我不理解反对票,也没有关于你们这些简单问题的回复?
-
如果您阅读 minimal reproducible example 链接以了解它为什么重要、为什么它可以帮助我们更好地理解您的问题、为什么它会帮助我们提供体面和快速回答。例如,如果您在回复之前阅读了链接,您就会知道我们能够编译和运行您的代码,我们能够对可运行代码进行调整,这使我们能够更好地查看所涉及的任何和所有问题。同样,我们不是要求查看整个程序,只是一个可运行的小示例。是的,这意味着我们要求您提供额外的工作......(待续)
-
...但请理解您要求志愿者提供免费工作,所以这真的对您要求太多了吗?这真的是我们的无理取闹吗?我可以保证,如果您这样做,如果您在此处发布此代码(同样不在链接中),并且您做得不错,那么反对票将变为赞成票,您可能会得到一个答案很快。您的来电。
-
另外,最重要的是——您的代码中哪里出现了错误?你能告诉我们吗?我当然不能只看它就告诉你,但是有了minimal reproducible example,我将有更大的机会这样做。
标签: java swing actionlistener