我正在尝试为具有单个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
行,而且我总是得到黑色背景。
我错过了什么?
答案 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()
设置了随机颜色吗?