问题描述
我目前在PyGtk3程序中具有以下内容,如果输入不可接受,它将Entry文本的颜色更改为红色:
...
self.entryIpAddress = Gtk.Entry()
self.entryIpAddress.connect('changed',self.entryIpAddress_changed)
...
def entryIpAddress_changed(self,widget):
if not valid_ip_address(self.entryIpAddress.get_text()):
self.entryIpAddress.override_color(Gtk.StateFlags.norMAL,Gdk.RGBA(1.0,0.0,1.0))
这可行,但是我想将文本恢复为原始颜色。在开始更改条目之前,是否可以使用一种方法找出条目的文本颜色?
解决方法
经过更多搜索后,我发现了如何做:
style = self.lblIpAddress.get_style_context()
self.entryIpDefaultColor = style.get_color(Gtk.StateType.NORMAL)