2
這個想法顯示在我的光標(line.column)所在的標籤上。哪些與.index(INSERT)很好地工作,但如果我用鼠標右鍵與文本綁定它返回前一個光標位置不是當前。 看來,事件後執行回調?Python Tkinter如何正確使用綁定?
from tkinter import Tk, Text, Frame, Label, StringVar, constants, END, INSERT
EXPL_TEXT = "I know that dress is karma. Perfume regret\nYou got me thinking bout"
class App(Frame):
def __init__(self,master):
Frame.__init__(self,master)
self.pack()
self.var = StringVar()
self.init_widgets()
def init_widgets(self):
self.text = Text(self)
self.text.bind('<Button-1>',self.callback_index)
self.text.pack()
self.text.insert(END,EXPL_TEXT)
self.label = Label(self, textvariable=self.var)
self.label.pack()
def callback_index(self,event):
x = self.text.index(INSERT)
self.var.set(x)
if __name__ == '__main__':
root = Tk()
app = App(root)
root.mainloop()
謝謝塞拉你絕對正確 –
它發生在一些事件。它在列表框中也很明顯。你只需要用'after()'解決它。也可以有其他的解決方案,但這對我來說很有效。 –