如何删除文本小部件tkinter中的最后一个字符

时间:2018-03-12 10:22:33

标签: python python-3.x tkinter widget python-3.6

我正在尝试使以下代码工作: 它意味着删除名为_textBox的文本小部件的最后一个字符(作为键盘上的退格键通常会这样做)...

.git

似乎唯一的问题是' .delete()'部分代码......

有没有人知道如何正确使用它来删除文本小部件中的最后字符?

提前致谢:)

3 个答案:

答案 0 :(得分:1)

所有好人!

我已经按照Pat的建议重写了部分代码,现在它的工作非常出色! 在这里,如果有人想要它:

def addChar(_textBox, char):
    global charCount, strToInsert
    if charCount == 0:
        strToInsert = ""
    if char == "backSpace":
        strToInsert = strToInsert[:-1]
        if charCount != 0:
            charCount = charCount - 1
    else:
        if charCount <= 15:
            strToInsert = strToInsert + char
            charCount = charCount + 1

    _textBox.delete("1.0", END)
    _textBox.insert(END, strToInsert)

FYI:我在另一个函数中设置变量charCoun ......

答案 1 :(得分:0)

要删除字符,必须在要删除的字符之前立即指定索引(即:删除您要给它的第一个字符"1.0")。

索引END表示tkinter自动添加不可见换行符之后的位置。 &#34;端-1&#34;表示紧接在此换行符之前的位置。由于您要删除用户输入的最后一个字符(在此换行符之前),您必须使用"end-2c"(结尾减去两个字符)。

答案 2 :(得分:0)

仅删除条目小部件中的最后一个字符 您可以使用以下代码

CellList