这是我的createButtonsForButtonsBar
方法。
protected void createButtonsForButtonBar(Composite parent) {
Button okButton = createButton(parent, SWT.PUSH, "Close Aplot", true);
okButton.setEnabled(true);
okButton.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
viewer = null;
getShell().setVisible(false);
}
});
}
我不得不改变
Button okButton = createButton(parent, OK, "Close Aplot", true);
到
Button okButton = createButton(parent, SWT.PUSH, "Close Aplot", true);
因为 OK 版本在这一行抛出了运行时空指针错误
getShell().setVisible(false);
错误大致:
com.test.BaseDialog$7.widgetSelected(BaseDialog.java:277) 处未处理的事件循环异常 java.lang.NullPointerException
问题 :
OK
和 和有什么不一样SWT.PUSH
?
为什么OK会导致上述错误?