gpt4 book ai didi

java - 在 JFace ErrorDialog 中使用换行符

转载 作者:行者123 更新时间:2023-12-01 15:57:55 27 4
gpt4 key购买 nike

有人设法使用换行符(\n、\r)在 JFace ErrorDialog 中显示详细错误消息吗?

我尝试将 StackTrace 显示为详细消息,但它仅显示在一行中

StringBuffer sbStackTrace = new StringBuffer();
for (StackTraceElement ste : throwable.getStackTrace()) {
sbStackTrace.append(ste.toString()).append('\n');
}

final IStatus status = new Status(IStatus.ERROR, pluginId, statusMsg, new Throwable(sbStackTrace.toString(), throwable));
ErrorDialog dialog = new ErrorDialog(shell, "Error", customMessage, status, IStatus.OK | IStatus.INFO | IStatus.WARNING | IStatus.ERROR)

打开时,ErrorDialog 显示我想要的所有内容,但详细消息的格式不正确。

有什么想法吗?

最佳答案

查看 source for ErrorDialog.java 中的 ErrorDialog.populateList(List, IStatus, int, boolean) 方法,看起来该对话框每行只包含一个 IStatus,但如果该 IStatus 有子项,它将在后续行中包含它们。因此,您需要构建一个 MultiStatus 对象或创建您自己的 IStatus 实现。

关于java - 在 JFace ErrorDialog 中使用换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4694187/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com