2

我正在尝试为具有单个 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线条,但我总是得到黑色背景。

我错过了什么?

4

1 回答 1

3

好吧,似乎我在其他事情上挣扎太多了,我没有意识到我将测试颜色设置为#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()设置随机颜色吗?

于 2014-09-04T00:27:40.857 回答