在 python 3 中删除 Tkinter 条目小部件中光标左侧的字符
Remove a character on the left of the cursor in Tkinter entry widget in python 3
我想制作一个程序,当我点击一个按钮时,它会清除输入小部件中光标左侧的一个字符。
这是我尝试过的:
import tkinter as tk
def clear_one(entry_field):
from tkinter import END
current = entry_field.get()
current = str(current)
cleared = current[:-1]
entry_field.delete(0, END)
entry_field.insert(0, cleared)
root = tk.Tk
e = tk.Entry()
e.grid(row=0, column=0)
e.focus()
b = tk.Button(text="Clear", command=lambda: clear_one(e))
b.grid(row=1, column=0)
tk.mainloop()
它只是删除了输入小部件中的最后一个字符,当我将光标移动到另一个位置并单击按钮时,它仍然删除了输入小部件中的最后一个字符。
但是我想让它删除光标左边的字符。
我没有在网上找到任何合适的解决方案,可能是因为我是编程新手,所以无法理解这些解决方案。
谁能帮我解决这个问题?
如果要删除光标左边的字符,确定光标的位置,减一,然后删除那个字符。
def clear_one(entry_field):
insert = entry_field.index("insert")
entry_field.delete(insert-1)
我想制作一个程序,当我点击一个按钮时,它会清除输入小部件中光标左侧的一个字符。
这是我尝试过的:
import tkinter as tk
def clear_one(entry_field):
from tkinter import END
current = entry_field.get()
current = str(current)
cleared = current[:-1]
entry_field.delete(0, END)
entry_field.insert(0, cleared)
root = tk.Tk
e = tk.Entry()
e.grid(row=0, column=0)
e.focus()
b = tk.Button(text="Clear", command=lambda: clear_one(e))
b.grid(row=1, column=0)
tk.mainloop()
它只是删除了输入小部件中的最后一个字符,当我将光标移动到另一个位置并单击按钮时,它仍然删除了输入小部件中的最后一个字符。
但是我想让它删除光标左边的字符。
我没有在网上找到任何合适的解决方案,可能是因为我是编程新手,所以无法理解这些解决方案。
谁能帮我解决这个问题?
如果要删除光标左边的字符,确定光标的位置,减一,然后删除那个字符。
def clear_one(entry_field):
insert = entry_field.index("insert")
entry_field.delete(insert-1)