0
SWT와 JFace에서 최근입니다. 최근에 내 프로젝트에서 JFace 테이블 뷰어를 사용했습니다. 삭제 버튼으로 항목을 삭제해야합니다. 그러나 테이블 뷰어를 삭제 한 후 새로 고치면 작동하지 않습니다. 나는 아래에 보여 reason.My 코드를 알고 싶어JFace 테이블 뷰어 항목 삭제를 새로 고칠 수 없습니다.
btnDeleteConstraint.addSelectionListener(
new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
ISelection selection = tableViewer.getSelection();
logger.debug("datatype selected");
if (selection != null || selection instanceof
IStructuredSelection) {
IStructuredSelection sel = (IStructuredSelection) selection;
Iterator iterator = sel.iterator();
while(iterator.hasNext()) {
Object obj = iterator.next();
tableViewer.remove(obj);
}
tableViewer.refresh();
}
}
});
그리고 난 입력을 설정하고 결국 테이블을 새로 고침) (다른 방법이라는 업데이트를 사용 : 당신이 refresh
를 호출 할 때
public void update()
{
tableViewer.setInput(DataTypeFactory.
getInstance().getCastList(wizard.getSourceInfo().getDBType()));
tableViewer.refresh();
}
그래서 수정할 때마다 테이블을 새로 고칠 필요가 없습니다. 맞습니까? – khunnie
아니요 새로 고칠 필요가 없습니다. 그러나 콘텐츠 공급자 데이터를 표시된 테이블과 동기화 된 상태로 유지해야합니다. –