【发布时间】:2014-10-18 23:17:10
【问题描述】:
如何使用 GTK3 在 Python 中更改单个按钮的颜色?我有两个 Gtk.Button。我想将第二个按钮颜色更改为蓝色。
【问题讨论】:
标签: python button colors background-color gtk3
如何使用 GTK3 在 Python 中更改单个按钮的颜色?我有两个 Gtk.Button。我想将第二个按钮颜色更改为蓝色。
【问题讨论】:
标签: python button colors background-color gtk3
通常人们不希望程序覆盖他们的桌面主题。无论如何,我认为这在 Gtk3+ 之前是可能的,但我不太确定,使用 css 可能是可能的。
这是我能得到的最接近你的地方。
from gi.repository import Gtk, Gdk
def button_clicked(button):
print("Button has been clicked!")
window=Gtk.Window()
button=Gtk.Button(label="Button")
button.connect("clicked", button_clicked)
color = Gdk.color_parse('#234fdb')
button.modify_bg(Gtk.StateType.PRELIGHT, color)
window.add(button)
window.show_all()
Gtk.main()
或
from gi.repository import Gtk, Gdk
def button_clicked(button):
print("Button has been clicked!")
window=Gtk.Window()
button=Gtk.Button(label="Button")
button.connect("clicked", button_clicked)
window.add(button)
window.show_all()
colorh="#0000FF"
color=Gdk.RGBA()
color.parse(colorh)
color.to_string()
button.override_background_color(Gtk.StateFlags.NORMAL, color)
Gtk.main()
【讨论】:
modify_bg 和override_background_color 已被弃用。也许这就是他们没有工作的原因?有什么想法吗?
这应该可以通过 css 实现,试试这个链接以获得一个很好的例子,了解如何一起使用 python gtk 和 css。
http://wolfvollprecht.de/blog/gtk-python-and-css-are-an-awesome-combo/
【讨论】: