Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将变量值传递给另一个选项卡(JPanel)_Java_Swing - Fatal编程技术网

Java 将变量值传递给另一个选项卡(JPanel)

Java 将变量值传递给另一个选项卡(JPanel),java,swing,Java,Swing,我一直在寻找解决办法,但问题仍然存在。我正在设计GUI,并试图通过单击按钮更改变量: private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { var=(String)jComboBox2.getSelectedItem(); } 然后我想用它来更改另一个选项卡中的标签,这个选项卡已经存在,但它总是说变量的null值不会

我一直在寻找解决办法,但问题仍然存在。我正在设计GUI,并试图通过单击按钮更改变量:

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                          
    var=(String)jComboBox2.getSelectedItem();
}
然后我想用它来更改另一个选项卡中的标签,这个选项卡已经存在,但它总是说变量的null值不会更新,即使它是在最高级的类中定义的。 我试着:

jLabel4.revalidate();
jLabel4.repaint();
但它也失败了

好的,我会更好地解释它:我有一个按钮定义如下:

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt)
{                                         
var=(String)jComboBox2.getSelectedItem();
jLabel4.revalidate(); //actually makes no difference if i delete this 2 lines...
jLabel4.repaint();    }
我想在另一个选项卡JPanel中使用这个变量:

jLabel4.setText("Studenci z przedmiotu " + var); 

但是变量var始终保持为null,正如在母类中定义的那样,这是非常合乎逻辑的,因为所有组件都是在启动时启动的,然后再按下按钮。。。。但是,您知道为什么重新绘制和重新验证函数不起作用吗?我怎样才能替换它们?sry没有发布整个代码,但我认为这将是太多的垃圾邮件;d

如果要更改文本变量,请在gui中使用setText方法 例如:

 jlable4.setText("new text");
把它放在你的行动中,就像这样:

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                          
        jlable4.setText("new text");
   }

如果这是你的问题,享受吧!如果不给我一个安静的代码,告诉我什么是错误信息,我会帮助你。

你能更好地解释你的问题吗?当我单击jButton2时,您希望该var成为您选择的项目。您确定jComboBox包含字符串对象吗?