如何停止在 tkinter 文本小组件中复制、粘贴和退格?
Text 小组件接受多行用户输入,在其中,你可以键入文本并执行诸如复制、粘贴和删除的操作。有些方法可以禁用 Text 小组件上各种操作的快捷方式。
为了禁用 Text 小组件中的复制、粘贴和退格,你必须使用事件处理程序绑定事件,并在 Python 中使用 lambda 关键字返回 break。以下示例演示了其工作原理。
示例
# Import the required library from tkinter import * # Create an instance of tkinter frame or widget win=Tk() win.geometry("700x350") # Create a text widget text=Text(win, font="Calibri, 14") text.pack(fill= BOTH, expand= True) # Bind the keys with the event handler text.bind('<Control-v>', lambda _:'break') text.bind('<Control-c>', lambda _:'break') text.bind('<BackSpace>', lambda _:'break') win.mainloop()
输出
运行以上代码将显示一个窗口,其中包含一个 Text 小组件,用户可以在其中键入和插入文本。
但是,它不允许用户使用 <BackSpace> 键或“Ctrl+C”和“Ctrl+V”键的组合。
广告