1

我正在使用 python 和 gtk。

是否可以创建全局样式?
我想将窗口中所有标签中的文本设置为红色和粗体。
请给出代码示例。

编辑 1:它也必须在 Windows 上工作。

编辑2:我的实际代码:

    #!/usr/bin/python

    import gtk
    import db
    import datetime
    import gobject
    import pango

    class ReportNew(gobject.GObject):

            __gsignals__ = {"update-db": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE,())}

            def __init__(self):
                    # Basics
                    self.__gobject_init__()
                    self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
                    self.window.connect("destroy",self.destroy)
                    self.window.set_default_size(800,400)
                    self.window.set_title("WINDOW")

                    screen = gtk.gdk.Screen.get_default()
                    css_provider = gtk.CssProvider()
                    css_provider.load_from_path('style.css')
                    context = gtk.StyleContext()
                    context.add_provider_for_screen( screen,
                                            css_provider,
                                            gtk.STYLE_PROVIDER_PRIORITY_USER
                                            )
4

1 回答 1

1

您可以使用选择器来指定哪些小部件受样式表影响。

from gi.repository import Gdk as gdk

screen = gdk.Screen.get_default()

css_provider = gtk.CssProvider()
css_provider.load_from_path('/path/to/file.css')

context = gtk.StyleContext()
context.add_provider_for_screen( screen,
                                 css_provider,
                                 gtk.STYLE_PROVIDER_PRIORITY_USER
                                 )

创造/path/to/file.css

/* Set background on GtkLabel
* and other types inheriting from
* it
*/
GtkLabel {
  background-color: red;
  font-weight:bold;
}
于 2012-12-09T13:46:11.437 回答