如何在Codename One中选择并高亮显示表中的行

时间:2017-02-17 17:12:50

标签: codenameone

我是Codename One的新手,我很想在Stack Overflow上提问。我觉得两者都很棒!

我对Codename One中的Table类有疑问。我搜索了网络,Stack Overflow,API,所有内容,并且无法找到一个好的答案。

我希望能够选择一行并突出显示它,以便随后可以对其中的数据执行操作。我已经通过覆盖createCell方法并制作所有单元格按钮来实现它,但这不是一种可接受的方法。问题是因为每次用户点击时都必须重建表格。一个细胞。

当表包含的行数多于可显示的行数并重建表时,表将跳回表的开头。然后,如果用户希望看到它,则用户必须向下滚动到所选行。让桌子像这样跳来跳是不可接受的。

另外,我可能想在表中使用其他控件。我知道有一个table.getSelectedRow(),所以我可能会遗漏一些东西。另外,我想知道如何以编程方式选择一行。

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:0)

这是基于HTTP的javadocs中的示例。我做的一个轻微的黑客是Table来手动触发表的刷新:

setModel(getModel())

enter image description here

答案 1 :(得分:0)

我将使用的解决方案如下:

  1. 对于单个选择,第一列中的单选按钮。
  2. 对于多项选择,请在第一列中选​​中一个复选框。
  3. 我仍然很好奇com.codename1.ui.table.Table类中的getSelectedRow()用于。

    我希望这可以帮助其他人进行GUI设计。