GTK:创建一个彩色的常规按钮

时间:2009-08-06 19:55:17

标签: python button gtk colors pygtk

我该怎么办?很多网站都说我可以在按钮上调用.modify_bg(),但这没有任何作用。我可以在按钮上添加一个EventBox,并为其添加一个标签,然后改变它的颜色,但它看起来很可怕 - 按钮边缘之间有一大堆灰色空间不会改变。我只想要看起来像这样的东西:

img
(来源:kksou.com

网站声称刚刚在按钮上完成了modify_bg()。但那对我不起作用。 =(。

正确的答案可能涉及创建一个样式,或者带有gtkrc文件的东西等。有人可以指向我这个方向吗?

1 个答案:

答案 0 :(得分:16)

这是一个小例子:

import gtk

win = gtk.Window()
win.connect("destroy", gtk.main_quit)

btn = gtk.Button("test")

#make a gdk.color for red
map = btn.get_colormap() 
color = map.alloc_color("red")

#copy the current style and replace the background
style = btn.get_style().copy()
style.bg[gtk.STATE_NORMAL] = color

#set the button's style to the one you created
btn.set_style(style)

win.add(btn)
win.show_all()

gtk.main()