簡體   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