我有一个消息对话框如下:
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,Cancel按钮。但另一方面,当我在消息对话框中将问题(参数)作为大字符串传递时,在对话框中看不到“确定”和“取消”按钮。他们被隐藏了。有没有办法总是显示确定和取消按钮??
答案 0 :(得分:1)
无论我尝试什么,都无法重现你的问题。即使对于大型多线串,我的工作也非常好。附件是屏幕截图
我猜您传递的shell对象的布局或大小存在一些问题Shell parentShell
尝试仅为了测试问题而向方法发送null
openQuestion(null, "Hello Testing", "Test String,1")
此外,如果您需要我的测试代码以供参考here