Если вы хотите получить доступ к элементам пользовательского интерфейса в okPressed
, вы должны сделать это перед вызовом super.okPressed()
, потому что это закроет диалог и избавится от элементов управления.Так что-то вроде:
@Override
protected void okPressed()
{
IStructuredSelection sel = viewer.getStructuredSelection();
// TODO deal with selection
// Call super.okPressed() last
super.okPressed();
}
В качестве альтернативы сохраните выделение при вызове вашего widgetSelected
.