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

问题描述 投票:5回答:1

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

img (来源:kksou.com

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

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

python button gtk colors pygtk
1个回答
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()
© www.soinside.com 2019 - 2024. All rights reserved.