在 Windows 和 Linux 上,当按住 Ctrl 键时,可以使用脱字符键上下移动而不更改选择。该表显示了一些视觉反馈。
我玩过一个使用 TableCursor
的 SWT 代码片段,但它似乎半生不熟,因为它引入了几个新错误 - 例如当按下 Ctrl+End 时,释放 Ctrl 键后跳回到之前的选择。
如何获取或设置这个“重点”行?
最佳答案
这看起来不像是可以直接获取/设置的属性,但您可以从绘制事件中检测到焦点行并自定义绘制焦点。
添加 Listener
到您的 SWT.PaintItem
事件表:
handleEvent(PaintEvent e) {
if (e.detail & SWT.FOSCUSED != 0)
myFocusedRow = ((Table)e.widget).indexOf((TableItem)e.item);
...
if (e.item == myFocusedItem)
e.gc.drawFocus(e.x, e.y, e.width, e.height);
}
关于SWT 表 : how to set/get "focused" row,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8852574/