java - 如何将索引 "i"处的项目设置为zk列表框中的选定项目

标签 java listbox zk

我使用 ListModelList 将选项列表添加到 ZK 列表框。接下来,我尝试遍历这些选择列表并找到所需的项目(例如“字符串”)。我需要将此项目(“String”)设置为所选项目。

我尝试了下面的代码,但它不起作用。有办法做到这一点吗?

  liveListModel = new ListModelList(new AppModelItem [] { 
        new AppModelItem("String", "string"), 
        new AppModelItem("Number", "number"), 
        new AppModelItem("Array", "array")
    });

    String choice [] = {"String", "Hello", "XYZ" };

    Listbox typesList = new Listbox();
    typesList.setModel(liveListModel);
    for (int i = 0; i < choice.length; i ++) {
        if (choice.[i] == typesList.getItemAtIndex(i).getValue().toString());
        typesList.setSelectedItem(typesList.getItemAtIndex(i));
    }

谢谢, 索尼

最佳答案

如果此代码是您的原始代码,复制并粘贴到编辑器中,则删除 if 表达式后面的分号并使用 equals 测试字符串是否相等。 for 循环应如下所示:

for (int i = 0; i < choice.length; i++) {
    if (choice[i].equals(typesList.getItemAtIndex(i).getValue().toString())) {
        typesList.setSelectedItem(typesList.getItemAtIndex(i));
    }
}

如果这仍然不起作用,请添加一些调试代码来检查 getValue() 是否确实返回正确的值:

for (int i = 0; i < choice.length; i++) {
    if (choice[i].equals(typesList.getItemAtIndex(i).getValue().toString())) {
        typesList.setSelectedItem(typesList.getItemAtIndex(i));
    } else {
      // DEBUG CODE
      System.out.printf("Expected: %s, found: %s%n", typesList.getItemAtIndex(i).getValue().toString());
}

关于java - 如何将索引 "i"处的项目设置为zk列表框中的选定项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3495940/

相关文章:

java - 不允许同时设置 vflex 和高度,除了 ZK 8 中的 vflex ="min"

java - 单向和双向 JPA 和 Hibernate 关联有什么区别?

java - 如何防止在 Android Oreo 中的 dobleTap 上启动重复 Activity

c# - WPF 两个列表框之间的单选

javascript - 将元素从一个列表框移动到另一个列表框

java - ZK 7中如何收听甚至从组合框中选择项目?

java - Android 应用程序如何在手机启动时延迟您的服务启动

java - 将当前日期时间转换为夏令时罗马尼亚时间

c# - Windows Phone 的 silverlight 中的文本换行问题

java - ZK中动态初始化窗口