小编Van*_*dez的帖子

为什么css样式不适用于GtkButton?

请原谅我的英语.

我正在尝试使用css文件更改GtkButton的背景颜色,但我不能.我尝试了一些我在网上找到的例子,但都没有用.我发布了两个例子.一个在Python 3.2.3中,另一个在C中我使用的是Gtk + 3.6和Kubuntu 12.10.

这是其中一个的代码:

from gi.repository import Gtk, Gdk

class MainWindow(Gtk.Window):
    def __init__(self):
        super().__init__()
        vbox = Gtk.Box(spacing=10,orientation=Gtk.Orientation.VERTICAL)
        self.add(vbox)

        self.entries = [ Gtk.Entry() for i in range(3) ]
        for e in self.entries:
            vbox.pack_start(e, True, True, 0)
            e.connect("changed", self.on_entry_changed)
            e.set_text('123')

        button=Gtk.Button(label='ok')
        vbox.pack_end(button,True,True,0)

    def on_entry_changed(self,entry):
        ctx = entry.get_style_context()
        if not entry.get_text().isnumeric():
            ctx.add_class('invalid')
        else:
            ctx.remove_class('invalid')
cssProvider = Gtk.CssProvider()
cssProvider.load_from_path('style.css')
screen = Gdk.Screen.get_default()
styleContext = Gtk.StyleContext()
styleContext.add_provider_for_screen(screen, cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_USER) # With the others GTK_STYLE_PROVIDER_PRIORITY values get the same result.

window = MainWindow() …
Run Code Online (Sandbox Code Playgroud)

css python gtk styles gtk3

4
推荐指数
2
解决办法
4391
查看次数

标签 统计

css ×1

gtk ×1

gtk3 ×1

python ×1

styles ×1