Gtk3 Python 小部件背景图像



我正在使用Python 3.4和Gtk 3.18。 我已经能够弄清楚如何通过CSS为小部件(在我的例子中是Gtk.Box(实现背景图像。 但是,我希望能够将该背景图像动态更改为用户指定的图像。 怎么能做到这一点呢?

当前用于框背景的 css 文件部分。

.backImagePitPass {
background-image: url('../software/resources/PitPass.png');
background-size: contain;
background-position: left top;
background-repeat: no-repeat;
border: 1px solid black;
outline-style: solid;
}

实现应用的样式表。

def _initStyles(self):
css_provider = Gtk.CssProvider()
css_provider.load_from_path('ui/main/gtk-widgets.css')
Gtk.StyleContext.add_provider_for_screen(Gdk.Screen.get_default(),
css_provider, Gtk.STYLE_PROVIDER_PRIORITY_USER)

我尝试将其作为测试,但该框及其内容甚至没有显示。

context = self._boxPreview.get_style_context()
css_provider = Gtk.CssProvider()
css_provider.load_from_data(b'''
.backImagePitPass {
background-image: url('../software/resources//PitPass2.png');
background-size: contain;
background-position: left top;
border: 1px solid black;
}
''')
context.add_provider(css_provider, Gtk.STYLE_PROVIDER_PRIORITY_USER)

在进行了更多搜索后,我在这里找到了一个解决方案 在 Gtk3(python(中动态设置树视图中行的选定属性,这为我指明了一个可行的解决方案。

最新更新