如何绑定 TextBuffer 或 TextView 的 Gio.Settings?

如何绑定 TextBuffer 或 TextView 的 Gio.Settings?

我尝试通过 TextBuffer 将 TextView 绑定到键“text”。我获取了文本,但未记录此属性。

widget = self.builder.get_object('textbuffer_text')
settings.bind("text", widget, "text", Gio.SettingsBindFlags.DEFAULT)

我将不胜感激任何提示或帮助

答案1

我手动设置了,但是很烦人。

widget = self.builder.get_object('textbuffer_text')
#~ self.settings.bind("text", widget, "text", Gio.SettingsBindFlags.DEFAULT)
text = self.settings.get_string("text")
widget.set_text(text, len(text))

...

def on_textbuffer_text_changed (self, widget):
    b,e = widget.get_bounds()
    self.settings.set_string("text", widget.get_text(b,e,False).decode('utf-8'))

相关内容