我在管理Gtk.Entry小部件发出的插入文本信号时遇到了麻烦.请考虑以下示例:
from gi.repository import Gtk
def on_insert_text(entry, new_text, new_text_length, position):
print(position)
entry = Gtk.Entry()
entry.connect('insert-text', on_insert_text)
window = Gtk.Window()
window.connect("destroy", lambda q: Gtk.main_quit())
window.add(entry)
window.show_all()
Gtk.main()
Run Code Online (Sandbox Code Playgroud)
我在信号处理程序上收到的位置属性总是为0.除非我误解了这应该是不应该插入下一个文本的位置?
最后我想要做的是验证小部件中文本的输入以限制将被接受的字符.我计划这样做的方式类似于文档中提供的示例,其中所有字符都转换为大写.