如何使ErrorDialog默认图标更大?

时间:2016-09-07 17:57:06

标签: java swt jface

我正在尝试改进我的GUI对话框的UI,以便在出现错误时弹出。然而,我似乎无法调整GUI左侧显示的默认错误图标。见下图。 Original size of icon in attached image

我尝试使用以下代码执行此操作。

@SuppressWarnings("static-access")
private void displayStatusDialog(IStatus s)
{
    checkNotNull(s);
    Display.getDefault().syncExec( () ->
    {
        ErrorDialogWithBigIcon window = new ErrorDialogWithBigIcon(
            Display.getDefault().getActiveShell(),
            AppMessages.msg("SEMANTIC_ISSUES_TITLE"), "", s, 0); 

        window.openError(Display.getDefault().getActiveShell(),
            AppMessages.msg("SEMANTIC_ISSUES_TITLE"),null, s); 
        window.setDefaultImage(window.getImage());
    });
}

1 个答案:

答案 0 :(得分:1)

窗口默认图像与错误图像无关。

您需要扩展ErrorDialog类并覆盖getImage方法,例如:

@Override
protected Image getImage() {
   Image image = super.getImage();

   ... your resize code here

   return image;
}

您可以使用以下内容:

ErrorDialogWithBigIcon test = 
   new ErrorDialogWithBigIcon(shell, "Title", "Message", status, 
          IStatus.OK | IStatus.INFO | IStatus.WARNING | IStatus.ERROR);
test.open();