【问题标题】:Is it possible to watch BufferedImage objects while debugging in IntelliJ?在 IntelliJ 中调试时是否可以观看 BufferedImage 对象?
【发布时间】:2015-12-19 03:53:19
【问题描述】:

在 IntelliJ 中调试时是否可以观察 BufferedImage 对象?

我的意思是查看图像的视觉内容,而不是记忆身份。

是否也可以直观地查看自定义对象,即编写一些自定义可视化工具?

【问题讨论】:

    标签: java debugging intellij-idea visualization


    【解决方案1】:

    默认情况下,IntelliJ IDEA 2016.1.1 能够在调试时将BufferedImage 对象显示为图像(可能以前的版本也支持此功能)。

    1. 设置一个断点,您可以在其中访问BufferedImage 对象
    2. 默认情况下,对于BufferedImage类Idea会设置Image查看器,所以你只需点击BufferedImage对象所在行的View image文本在调试器窗口的最右侧。这也可以在 Evaluate Expression 窗口中使用。
    3. 如果为BufferedImage 类设置了另一个查看器,您可以通过在调试器窗口中右键单击BufferedImage 对象并选择View as / Image 将其更改回来。

    图像将在弹出窗口中加载。 (你可以调整弹窗的大小,但不能移动。我在 OS X 上,Idea 的窗口处理在这里有点奇怪,在 Win 上可能更好)


    您还可以创建自己的对象可视化工具。这也可以在 View as 上下文菜单中完成,在这种情况下选择 Create... 选项。 您可以在此处输入自定义表达式,该表达式将显示在调试器窗口中对象的行中。请注意,这仅用于以文本格式显示对象的信息。

    例如,如果您想在调试器窗口中将BufferedImage 显示为[width]x[height],请创建一个新视图,选择使用以下表达式单选按钮,然后输入以下表达式:

    getWidth() + "x" + getHeight()
    

    点击应用确定后,你会得到:

    您可以通过右键单击变量手表面板来管理查看器,然后选择自定义数据视图...

    【讨论】:

    • 哇!太酷了!正是我所需要的。我点击了“显示图片”,我是金色的 :-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-03
    • 2021-11-05
    相关资源
    最近更新 更多