python-3.x 如何删除选择文本小工具内内容的选项(不使用state = disabled)

jxct1oxe  于 2023-02-26  发布在  Python
关注(0)|答案(1)|浏览(116)

我试过使用exportselection = False
这是我用来获取用户输入的代码,如果用户突出显示文本小部件(同时输入他们的答案),他们能够编辑输入的打印位置

import tkinter as tk
    from tkinter import ttk
    
    window = tk.Tk()
    
    numb_of_times = 5
    
    window.geometry('1920x1080')
    window.configure(bg = 'blue')
    
    input_board = tk.Text(window,state = "disabled")
    input_board.pack()
    input_board.place(x = 100,y = 40)
    
    def send():
     input_board.configure(state="normal")
     input_board.insert(tk.INSERT, '%s\n' % user_input)
     input_board.configure(state="disabled")
    
    
    for i in range(numb_of_times):
     user_input = input()
     print(user_input)
     send()
    
    window.mainloop()

我已尝试使用exportselection = False

v9tzhpje

v9tzhpje1#

当文本小部件中的选择发生变化时,它会发出一个<<Selection>>事件,您可以绑定到该事件并删除选择,这样可以防止任何文本被选中。
选择由标记“sel”表示,您可以将其传递给tag_remove
解决方案可能如下所示:

def remove_selection(event):
    event.widget.tag_remove("sel", "1.0", "end")

input_board.bind("<<Selection>>", remove_selection)

相关问题