我目前正在使用Kepler开发一个eclipse rcp应用程序。
我的应用程序可以有多个选项卡,每个选项卡都包含一个不同数据的表。选项卡上有一个按钮,用于在选项卡中向表中添加行。但是,当我打开多个选项卡然后返回到我首先打开的选项卡时,执行以下代码时,它会尝试从我最后打开的选项卡中获取所选项目 -
TableItem[] tblItem = tableTC.getSelection();
它几乎就像我需要一样 -
TableItem[] tblItem = getActivePart().tableTC.getSelection();
当我执行getPartName()时,会返回正确的选项卡名称,但是它会尝试从其他部分获取表数据。
听众代码 -
Button btnEdit = new Button(cmpBtnSide, SWT.PUSH | SWT.HORIZONTAL);
btnEdit.setText("Edit");
btnEdit.addListener(SWT.Selection, new Listener() {
@Override
public void handleEvent(Event arg0) {
// TODO Auto-generated method stub
TableItem[] tblItem = tableTC.getSelection();
}
});
非常感谢任何帮助。
由于
答案 0 :(得分:0)
这个问题是由我的表在我的代码顶部声明为静态变量引起的。
感谢Greg的解决方案!