【发布时间】:2014-01-07 17:01:34
【问题描述】:
10我正在尝试在 Windows 上使用 GTK3+。 设置是从http://sourceforge.net/projects/pygobjectwin32/files/?source=navbar 安装的 Python 2.7 和 GTK3+ (3.10.x) 对我来说,这似乎是启动和运行它的最简单方法,如果我错了,请纠正我。
以下应用在 Linux 上运行良好,但在 Windows 上,按钮的阴影关闭,我似乎无法更改文本的颜色,它只是保持黑色。
from gi.repository import Gtk, Gdk
win = Gtk.Window()
win.set_name('MyWindow')
# The Button
button = Gtk.Button("Click Me")
win.add(button)
win.connect("delete-event", Gtk.main_quit)
style_provider = Gtk.CssProvider()
css = """
#MyWindow GtkButton {
border-radius: 10px;
border-color: #000;
font: Sans 10;
color: white;
box-shadow: 0 0 5px grey inset;
margin: 10px;
}
"""
style_provider.load_from_data(css)
Gtk.StyleContext.add_provider_for_screen(
Gdk.Screen.get_default(),
style_provider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION
)
win.show_all()
Gtk.main()
关于这里可能出现什么问题的任何想法?
【问题讨论】:
-
我相信 Gtk 在 Windows 上使用特定引擎进行主题化,以便 Gtk 应用程序正确集成到本机 UI。 IIRC,这个引擎不像 linux 引擎那样接受所有的 CSS 属性。
-
算了,Windows 的 Gtk3 主题应该是纯 CSS,而不是依赖于引擎:blogs.gnome.org/alexl/2011/11/25/gtk-work-on-windows
-
这是个好消息,虽然我想知道这里出了什么问题,是我安装不正确吗?