java - 从 SWT ComboBox 获取数据

标签 java swt

我正在尝试在从数据库填充的组合框中使用数据 key 对。更新数据库中的记录。
我能够用数据库中的数据填充组合框,但是当我用组合框中的数据更新记录时,我收到一条错误,指出如果组合框的选择索引为空,则我有一个空指针。
我正在尝试设计一种方法来检查该框是否为空,这样如果是空的,我就不会使用它进行更新。
我对此完全难住了。

这是迄今为止我检查空值并在值不为空时运行更新的代码。更新本身可以工作,但是当我尝试从组合框中获取数据时,我必须转换数据类型并且没有选择任何内容,我收到错误。

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);
    }
}

最佳答案

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

[...] Returns -1 if there is no selected item or if the user specified an item which is not in the list.

关于java - 从 SWT ComboBox 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10522871/

相关文章:

java - 用户单击菜单项后如何保持 SWT 菜单打开?

java - 如何将 ComboBoxCellEditor 设为只读?

java - 运行 jar : Exception in thread "main" org. eclipse.swt.SWTException 时出现 SWT 异常:无效的线程访问

java - 如何在 SWT 项目中显示 BufferedImages?

java - 无法使用 Play 框架连接到数据库

java - 如何在 Buck 中使用自定义注释处理器?

java - dynamoDB 表上的 UpdateTableSpec 不起作用

用于 SQL 数据定义语言的 Java API

java - 接口(interface)/抽象类

swt - 具有预定义样式的SWT控件