如何将Gtk::CssProvider与gtkmm-4.0一起使用



我试图将Gtk::CssProvider与gtkmm-4.0一起使用,但它不起作用。

我想更改背景颜色按钮。

//CSS style
Glib::ustring data = "GtkButton {color: #00ffea;}";
auto provider = Gtk::CssProvider::create();
provider->load_from_data(data);
auto ctx = m_button.get_style_context();
ctx->add_provider(provider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);

我想我忘了什么,但我不明白是什么。

有什么想法吗?

我在上下文中添加了一个样式类,因此以后使用样式上下文时将使用这个新类进行样式设置。

现在它按我的意愿工作。

//CSS style
Glib::ustring data = ".button {background-color: #00FF00;}";
auto provider = Gtk::CssProvider::create();
provider->load_from_data(data);
auto ctx = m_button.get_style_context();
ctx->add_class("button");
ctx->add_provider(provider, GTK_STYLE_PROVIDER_PRIORITY_USER);

相关内容

  • 没有找到相关文章

最新更新