从SWT ComboBox获取数据

时间:2012-05-09 19:32:40

标签: java swt

我正在尝试在从数据库填充的组合框中使用数据密钥对。更新数据库中的记录 我可以使用数据库中的数据填充组合框,但是当我使用组合框中的数据更新记录时,如果组合框的选择索引为空,则会收到一条错误,指出我有一个空指针。
我正在尝试设计一种方法来检查盒子是否为空白,这样如果是,我不会用它来进行更新。
我对此深感不满。

这是我到目前为止检查空值的代码,如果值不为null,则运行更新。更新自行工作,但是当我尝试从组合框中获取数据时,我必须转换数据类型并且没有选择任何内容,我收到错误。

public Boolean checkStrNull(String strTest) {
    if (strTest == null) {
        return false;
    } else if (strTest.isEmpty()) {
        return false;
    } else if (strTest == "") {
        return false;
    } else {
        return true;
    }
}

public Boolean checkIntNull(int intTest) {
    if (intTest == 0) {
        return false;
    } else {
        return true;
    }
}

public void updateIntAnimal(Animal a, String strField, Integer intNew)
        throws SQLException {
    if (checkIntNull(intNew)) {
        a.updateIntField(strField, intNew);
    }
}

public void updateStrAnimal(Animal a, String strField, String strNew)
        throws SQLException {
    if (checkStrNull(strNew)) {
        a.updateStrField(strField, strNew);
    }
}

1 个答案:

答案 0 :(得分:1)

您可以在组合框上使用getSelectedIndex()方法查看是否有选择:

  

[...]如果没有选定的项目,或者用户指定的项目不在列表中,则返回-1。