MessageDialog в затмении не работает - PullRequest
1 голос
/ 27 декабря 2010

У меня есть следующий код.

MessageDialog dialog = new MessageDialog(new Shell(), "title", null, "message", MessageDialog.QUESTION, choices, 0);  // choices is an array

Это дает NPE, когда я делаю dialog.open(). Любая подсказка?

Ответы [ 3 ]

5 голосов
/ 28 декабря 2010

Вы не можете создать такую ​​оболочку. Вам необходимо получить доступ к существующей оболочке из контекста, в котором вы запускаете диалог. Если у вас есть ссылка на какой-либо элемент управления SWT, вы можете получить доступ к оболочке оттуда.

2 голосов
/ 31 декабря 2010

Похоже, что некоторые значения могут быть нулевыми в choices.

2 голосов
/ 27 декабря 2010

Обычный способ использовать MessageDialog - это один из статических методов open *, например, MessageDialog.openInformation(...). Но ваша проблема может быть связана с оболочкой, которую вы передаете.

...