Java:If 语句条件无法设置组件的值

问题描述 投票:0回答:1

我正在尝试使用 If 语句设置文本字段组件和组合框组件的值 所以,我的项目中有 2 个文件 第一个 Java 文件包含名为 isCek 的公共方法 这是它的样子

public void isCek(String kamar) {
    if(kamar!= null){
      System.out.println(kamar);
      JenisPasien.setSelectedIndex(1);
      AsalKamar.setText(kamar);
    }else{
      System.out.println(kamar);
      JenisPasien.setSelectedIndex(0);
      AsalKamar.setText("-");
    }

第二个 Java 文件包含一个使用第一个文件中的 isCek 方法的方法 这是代码

        RMPenilaianMedisLanjutanHemodialisa form = new RMPenilaianMedisLanjutanHemodialisa(null, false);
        form.isCek(tbKamIn.getValueAt(tbKamIn.getSelectedRow(),7).toString());

在终端输出上,它表明 if 语句工作正常

但是,JenisPasien(组合框)和 Asal Kamar(文本字段)没有设置该值

有人可以帮我解决这个问题吗? 谢谢你

java if-statement netbeans
1个回答
0
投票

问题可能是您没有更新 JFrame 来显示对 TextField 或 ComboBox 的更改。

  • 如果您对布局进行更改,则必须使用
    form.validate();
  • 再次验证它
  • 然后屏幕的像素必须重新绘制
    form.repaint();

所以你的新代码应该是

RMPenilaianMedisLanjutanHemodialisa form = new RMPenilaianMedisLanjutanHemodialisa(null, false);
form.isCek(tbKamIn.getValueAt(tbKamIn.getSelectedRow(),7).toString());
form.validate();
form.repaint();

这个可能对你有帮助

© www.soinside.com 2019 - 2024. All rights reserved.