entrycompletion.py
字号:
#!/usr/bin/env pythonimport timeimport pygtkpygtk.require('2.0')import gtkclass EntryCompletionExample: def __init__(self): window = gtk.Window() window.connect('destroy', lambda w: gtk.main_quit()) vbox = gtk.VBox() label = gtk.Label('Type a, b, c or d\nfor completion') vbox.pack_start(label) entry = gtk.Entry() vbox.pack_start(entry) window.add(vbox) completion = gtk.EntryCompletion() self.liststore = gtk.ListStore(str) for s in ['apple', 'banana', 'cap', 'comb', 'color', 'dog', 'doghouse']: self.liststore.append([s]) completion.set_model(self.liststore) entry.set_completion(completion) completion.set_text_column(0) completion.connect('match-selected', self.match_cb) entry.connect('activate', self.activate_cb) window.show_all() return def match_cb(self, completion, model, iter): print model[iter][0], 'was selected' return def activate_cb(self, entry): text = entry.get_text() if text: if text not in [row[0] for row in self.liststore]: self.liststore.append([text]) entry.set_text('') returndef main(): gtk.main() returnif __name__ == "__main__": ee = EntryCompletionExample() main()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -