SWT table增量选择
SWT table increment selection
我正在使用 swt table 并实现了 selectionListener
:
table.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent event) {
//...
}
});
我点击了第一项,监听器开始工作了!
现在,按下一个按钮后,我想 select 自动 table 中的下一个项目。我试过:
table.setFocus();
table.select(table.getSelectionIndex() + 1);
和
table.setFocus();
table.setSelection(table.getSelectionIndex() + 1);
selection 发生变化(蓝色),但 selectionListener 没有反应?!
也许你能帮我解决这个问题。
感谢您的帮助!
亲切的问候
这是设计使然(参见 this)。
您可以做的是:
table.setSelection(1);
table.notifyListeners(SWT.Selection, new Event());
甚至这样:
table.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent event) {
methodCallHere();
}
});
然后
table.setSelection(1);
methodCallHere();
我正在使用 swt table 并实现了 selectionListener
:
table.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent event) {
//...
}
});
我点击了第一项,监听器开始工作了!
现在,按下一个按钮后,我想 select 自动 table 中的下一个项目。我试过:
table.setFocus();
table.select(table.getSelectionIndex() + 1);
和
table.setFocus();
table.setSelection(table.getSelectionIndex() + 1);
selection 发生变化(蓝色),但 selectionListener 没有反应?!
也许你能帮我解决这个问题。
感谢您的帮助!
亲切的问候
这是设计使然(参见 this)。
您可以做的是:
table.setSelection(1);
table.notifyListeners(SWT.Selection, new Event());
甚至这样:
table.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent event) {
methodCallHere();
}
});
然后
table.setSelection(1);
methodCallHere();