1

我有一个 gtk.TextBuffer,它应该在按 Enter 后被清除,类似于大多数聊天程序上的输入框。我只是将缓冲区设置回空白字符串。不过,Enter 中的换行符并未被删除,并且在下一次输入期间,光标上方会出现一个空行。将光标移动到第一个 gtk.Iter 没有帮助。

4

2 回答 2

2

默认情况下,"gobject.connect()"回调在默认处理程序之前调用。你需要使用"gobject.connect_after()".

def insert_text_cb(text_buffer, position, text, lenght):
    if text == '\n':
        text_buffer.set_text('')

text_view = gtk.TextView()
text_view.get_buffer().connect_after('insert-text', insert_text_cb)
于 2009-06-27T11:26:47.293 回答
1

你确定你触发了正确的事件吗?之后也尝试连接它。

于 2009-06-26T21:55:01.823 回答