繁体   English   中英

在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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM