Кнопка OK и отмена не отображается в MessageDialog в JFace / SWT
У меня есть диалог сообщения следующего вида:
import org.eclipse.jface.dialogs.MessageDialog
public void openQuestion(Shell parentShell, String title, String question, final int iconStyle){
MessageDialog dialog = new MessageDialog(
parentShell,
title,
getTitleIcon(iconStyle),
question,
iconStyle,
new String[] { IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL },
0
) {
@Override
public Image getImage() {
return getIcon(iconStyle);
}
};
return dialog.open() == IDialogConstants.OK_ID;
}
Здесь, когда я передаю вопрос (параметр) в виде небольшой строки, я могу видеть кнопки OK, отмена в диалоговом окне. Но с другой стороны, когда я передаю вопрос(параметр) в виде большой строки в диалоговом окне сообщения, кнопки OK и отмена не видны в диалоговом окне. Они прячутся. Есть ли способ, чтобы кнопки OK и отмена отображались всегда??
1 ответ:
Независимо от того, что я пытаюсь, не в состоянии воспроизвести вашу проблему.Его работа отлично подходит для меня даже для большой многострочной строки.Прилагается снимок экрана
Я предполагаю, что существует некоторая проблема с макетом или размером объекта оболочки, который вы передаете
Shell parentShell
попробуйте отправить null в метод только ради проверки проблемыopenQuestion(null, "Hello Testing", "Test String,1")
Также, если вам нужен мой тестовый код для справки здесь