1

テキスト ボックスから 1 文字を削除しようとしています。そのためには、削除したい文字のインデックスを明らかに知る必要があります。たとえば、Fazackerley のように、各文字には独自のインデックスがあることを知っています。「F」は 1.0、「a」は 1.1 ですが、11 番目の文字 (「y」) に到達すると 1.10 になりますよね? しかし、ゼロは見えなくても無限であるため、1.10 は 1.1 と同じであるため、「a」を削除するためではありません。1.10 またはそれ以上の数値ではない 1.9 の後に来るものを知っている人はいますか。

誰かがそれを見たい場合は、ここにコードがあります。

from tkinter import *
import time
import random

class Application(Frame):
    def __init__(self, master):
        Frame.__init__(self, master)
        self.grid()
        self.widgets()

    def widgets(self):
        self.t1 = Text(width = 35, height = 5, wrap = WORD)
        self.t1.grid(row = 0, column = 0, sticky = W)
        self.count = 0
        self.coor = 1.0
        for x in range(1):
            self.t1.insert(END, 'fazackerley')
            self.count += 1
            time.sleep(0.5)
            root.update()
            self.t1.delete(1.10) #deletes 'a' (index 1.1) not 'y' 

root = Tk()
root.title()
root.geometry('250x250')
app = Application(root)
root.mainloop()

以上がコードのすべてで、'y' になるまで問題なく動作します。

4

1 に答える 1