繁体   English   中英

在JFace / SWT中的MessageDialog中看不到“确定”和“取消”按钮

[英]OK and Cancel button not visible in MessageDialog in 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,Cancel按钮。 但另一方面,当我在消息对话框中将问题(参数)作为大字符串传递时,在对话框中看不到“确定”和“取消”按钮。 他们被隐藏了。 有没有办法总是显示确定和取消按钮?

无论我尝试什么,都无法重现你的问题。即使对于大型多线串,它也能完美地工作。附件是屏幕截图 在此输入图像描述

我猜你传递的shell对象的布局或大小有一些问题Shell parentShell 尝试向方法发送null只是为了测试问题 openQuestion(null, "Hello Testing", "Test String,1")

此外,如果你需要我的测试代码,以供参考这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM