GTK 检查器

GTK 检查器是 GTK 中内置的交互式调试支持。

检查器功能强大,允许设计师和应用程序开发者实时测试 CSS 更改,放大部件以查看最细微的细节,并检查 UI 的结构和每个对象的属性。

The main window of the GTK inspector The main window of the GTK inspector

启用 GTK 检查器

要启用 GTK 检查器,可以使用 Control + Shift + IControl + Shift + D 键盘快捷键,或设置 GTK_DEBUG=interactive 环境变量。

还有一些环境变量可以设置,以影响检查器呈现其 UI 的方式。GTK_INSPECTOR_DISPLAYGTK_INSPECTOR_RENDERER 确定检查器正在使用的 GDK 显示和 GSK 渲染器。

在某些情况下,可能不适合让用户访问 GTK 检查器。可以使用 enable-inspector-keybinding 键在 org.gtk.Settings.Debug GSettings 模式中禁用键盘快捷键。

对象

检查器的主要入口点是对象页面

The UI scene graph The UI scene graph

你可以看到窗口的结构,包括每个部件、其兄弟部件和子部件,以及辅助对象,如事件控制器和布局管理器。

注意

你可以使用目标图标来使用你的指向设备选择要检查的部件。

选择对象后,你可以检查其类型、状态、构建器 ID、引用计数、几何形状

The state of a widget The state of a widget

对象的属性,以及修改其值的能力

The properties of a widget The properties of a widget

部件的 CSS 属性,包括 CSS 选择器层次结构

The CSS nodes of a widget The CSS nodes of a widget

对象安装的 动作

The actions of a widget The actions of a widget

部件使用的事件控制器

The event controllers of a widget The event controllers of a widget

可访问性角色、属性和边界

The accessibility information of a widget The accessibility information of a widget

你还可以放大部件,使用不同的放大倍数,作为确保渲染准确的有用工具

The widget magnifier The widget magnifier

全局

全局页面包含与 GTK 的版本和配置相关的信息

The Global page of the inspector The Global page of the inspector

你还可以找到应用程序的全局状态,例如其 应用程序 ID,或自动加载 GResource 包的资源路径。

CSS

CSS 页面允许你加载 CSS 规则,例如新类,并立即应用它们。此页面对于试验样式和覆盖很有用。

The Global page of the inspector The Global page of the inspector

录制器

录制器页面允许你记录 GTK 应用程序的渲染管道,并检查渲染节点、其状态及其内容

The Recorder page of the inspector The Recorder page of the inspector

提示

可以将录制保存到文件中,并在向 GTK 报告渲染错误时使用。

额外页面

GTK 检查器可以通过 GIO 扩展点进行扩展;应用程序可以注册自己的检查器页面,GTK 会将其添加到主检查器窗口。

Adwaita

使用 libadwaita 的应用程序将自动显示一个Adwaita页面,其中包含其他设置和控件

The Adwaita page of the inspector The Adwaita page of the inspector