类
GtkStyleContext
废弃:4.10
说明 [src]
class Gtk.StyleContext : GObject.Object
{
/* No available fields */
}
GtkStyleContext
存储影响小组件的样式信息。
为了构建最终样式信息,GtkStyleContext
从所有已附加 GtkStyleProviders
中查询信息。样式提供器可以通过 gtk_style_context_add_provider()
显式附加到上下文,或通过 gtk_style_context_add_provider_for_display()
附加到显示屏。最终样式是所有提供器信息的组合,按优先顺序排列。
对于 GTK 小组件,通过 gtk_widget_get_style_context()
返回的任何 GtkStyleContext
都将已经设置 GdkDisplay
和 RTL/LTR 信息。如果在小组件上更改了其中任何设置,样式上下文也将自动更新。
样式类
小组件可以向其上下文添加样式类,以便通过类关联不同的样式。各个小组件的文档会列出其自身使用的样式类,以及应用程序可以添加哪些样式类来影响其外观。
UI 库和应用程序中的自定义样式
如果你正在开发一个自定义小组件库,其呈现效果有别于标准组件,则可能需要使用 GTK_STYLE_PROVIDER_PRIORITY_FALLBACK
优先级自行添加 GtkStyleProvider
,无论是 GtkCssProvider
还是实现 GtkStyleProvider
接口的自定义对象。这样,如果需要,主题仍然可以尝试用不同的方式设置你的 UI 元素样式。
如果您在应用程序上使用自定义样式,则可能希望让您的样式信息优先于主题的样式信息,因此您必须使用优先级为 `GTK_STYLE_PROVIDER_PRIORITY_APPLICATION` 的 `GtkStyleProvider`,请记住,`XDG_CONFIG_HOME/gtk-4.0/gtk.css` 中的用户设置仍将优先于您的更改,因为它使用 `GTK_STYLE_PROVIDER_PRIORITY_USER` 优先级。
从 4.10 版开始弃用
相关的 API 已移至 GtkWidget
(如适用);否则,没有用于查询样式机制的替换。可设置样式的 UI 元素应使用小部件。
函数
gtk_style_context_add_provider_for_display
向 `display` 添加全局样式提供程序,该提供程序将用于所有 `GtkStyleContexts` 在 `display` 下的样式构建。
信号
从 GObject 继承的信号 (1)
GObject::notify
当对象的属性之一通过 g_object_set_property()、g_object_set() 等函数设置其值时,将发出通知信号。
类结构
struct GtkStyleContextClass {
GObjectClass parent_class;
void (* changed) (
GtkStyleContext* context
);
void (* _gtk_reserved1) (
void
);
void (* _gtk_reserved2) (
void
);
void (* _gtk_reserved3) (
void
);
void (* _gtk_reserved4) (
void
);
}
没有可用的描述。
类成员
parent_class: GObjectClass
没有可用的描述。
changed: void (* changed) ( GtkStyleContext* context )
没有可用的描述。
_gtk_reserved1: void (* _gtk_reserved1) ( void )
没有可用的描述。
_gtk_reserved2: void (* _gtk_reserved2) ( void )
没有可用的描述。
_gtk_reserved3: void (* _gtk_reserved3) ( void )
没有可用的描述。
_gtk_reserved4: void (* _gtk_reserved4) ( void )
没有可用的描述。