如何设置pygtk窗口的背景颜色

时间:2014-09-04 00:15:51

标签: widget pygtk drawingarea

我正在尝试为具有单个DrawingArea小部件的pyGtk窗口设置背景颜色。 使用此代码,每次启动脚本时,我总会得到一个随机颜色:

widget = gtk.DrawingArea()
widget.show()
window = gtk.Window()
window.add(widget)
col = gtk.gdk.Color('#010')
window.present()
widget.window.set_background(col)
window.connect('delete-event', gtk.main_quit)
gtk.main()

我也尝试使用widget.modify_bg(gtk.STATE_NORMAL, col)代替set_background行,而且我总是得到黑色背景。

我错过了什么?

1 个答案:

答案 0 :(得分:2)

好吧,似乎我在其他方面苦苦挣扎,我没有意识到我将测试颜色设置为#010,显然几乎是黑色。 使用modify_bg有效,只需记住设置合理的颜色;)

这是工作代码:

widget = gtk.DrawingArea()
widget.show()
window = gtk.Window()
window.add(widget)
col = gtk.gdk.Color('#0f0')
window.present()
widget.modify_bg(gtk.STATE_NORMAL, col)
window.connect('delete-event', gtk.main_quit)
gtk.main()

顺便问一下,有人知道为什么widget.window.set_background()设置了随机颜色吗?