java - 计算结果未显示在文本字段中

标签 java

为学校项目做一个小应用,除了这一件事我基本上已经完成了。在我的第一个面板中,人们可以填写每天的时间。文本字段中的这些数字需要相加,结果显示在第二个面板的文本字段中。

这里输入被添加到 Action 监听器中:

        public class knopHandler implements ActionListener
        {
        public void actionPerformed ( ActionEvent e )
        {
        JFrame frame2 = new JFrame ( "Total Hours" );
        frame2.setSize ( 600, 500 );
        JPanel uitvoerpanel = new uitvoerpanel();
        frame2.setContentPane( uitvoerpanel );
        frame2.setVisible( true );


        String invoerstring1 = maandaginvoer.getText();
        int getal1 = Integer.parseInt( invoerstring1 );

        String invoerstring2 = dinsdaginvoer.getText();
        int getal2 = Integer.parseInt( invoerstring2 );

        String invoerstring3 = woensdaginvoer.getText();
        int getal3 = Integer.parseInt( invoerstring3 );

        String invoerstring4 = donderdaginvoer.getText();
        int getal4 = Integer.parseInt( invoerstring4 );

        String invoerstring5 = vrijdaginvoer.getText();
        int getal5 = Integer.parseInt( invoerstring5 );

        String invoerstring6 = zaterdaginvoer.getText();
        int getal6 = Integer.parseInt( invoerstring6 );

        String invoerstring7 = zondaginvoer.getText();
        int getal7 = Integer.parseInt( invoerstring7 );

        int resultaat = getal1 + getal2 + getal3 + getal4 + getal5 + getal6 
        + getal7;

现在 int resultaat 需要显示在新面板的 totaalurenvak

   totaalurenvak = new JTextField ( 20 );
   totaalurenvak.setHorizontalAlignment ( JTextField.LEFT );
   totaalurenvak.setEditable ( false );
   totaalurenvak.setText(Integer.toString( resultaat) );

现在这是我尝试过的最新代码行,我也尝试过 totaalurenvak.setText(""+ resultaat);totaalurenvak.setText(Integer.parseInt ( resultaat) ) ;

可能值得注意的是,来自其他两个文本字段的输入确实显示在第二个面板中,只是这个没有显示,那么这里到底出了什么问题?无论我尝试什么代码行,编译器都会告诉我“找不到符号”。

最佳答案

您可以将 totaalurenvak 的创建留给代码不同部分的 init 函数。但是,在事件处理程序中,您必须为新的 JTextField

设置文本
int resultaat = getal1 + getal2 + getal3 + getal4 + getal5 + getal6 + getal7;
totaalurenvak.setText(Integer.toString(resultaat));

这是因为您尝试更改类变量之一的值。您必须在该变量上显式调用函数 setText(value)

顺便说一句,将 totaalurenvak 设为 JLabel 而不是无法编辑的 JTextField 会更简洁,因为这在语义上更清晰正确。

关于java - 计算结果未显示在文本字段中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44736082/

相关文章:

java - 关于 Java 数组

java - 在 Oracle 中为 Java 存储过程设置类路径

java - 使用 Microsoft Edge 测试 GWT Java 程序 - Windows 10

java - 从 ListView 到 PDF 的数据

java - Android 谷歌地图问题

java - Karaf : Recommended way to uninstall/install API's bundle, 以及如何避免重影捆绑解析

java - 当响应包含文件时,页面导航/渲染响应阶段将被忽略

Java 日志记录与 Log4J

java - 定时器/秒表 GUI

Java(JDBC): Alternatives for iteration of query results [ while(resultSet.下一个())]