自定义pyGTK按钮
我想创建一个按钮,使用pyGTK来控制这个按钮的外观。我该怎么做呢?
我希望能够为按钮的每种“状态”指定一张新的图片,比如按钮被按下时、鼠标悬停时、正常状态等等。
2 个回答
1
这里有一个简单的方法可以在按钮上使用图片。请注意,当你初始化按钮时,没有给它添加任何文字(self.button1 = gtk.Button())。如果在这里添加文字,按钮上就会显示文字,而不是图片。
self.image1 = gtk.Image()
self.image1.set_from_file('images/home.png')
self.image1.show()
self.button1 = gtk.Button()
self.button1.add(self.image1)
self.button1.show()
self.backupHBox.pack_start(self.button1, True, True)
self.button1.connect("clicked", self.quit)
5
在gtk.Image的API文档中提到,“如果你想让图片响应一些事件,比如点击按钮,可以把图片放在一个gtk.EventBox里面,然后连接事件盒子上的事件信号。”
你可能更想用gtk.Image
而不是gtk.Button
,因为按钮需要你对主题引擎的工作原理有更多了解。如果你真的想用按钮,那你需要去了解一下gtk rc文件以及如何操作这些文件的API。