1
テキストボックス内の単語を強調表示するプログラムがありますが、同じ単語をもう一度クリックすると強調表示されます。これは可能ですか?以下は、単語がクリックされたときのことをするコードのセクションです。あなたが手伝ってくれることを願っています。使用して単語を強調表示してからtkinterを使ってハイライトします
def __init__(self, parent):
tk.Frame.__init__(self, parent)
self.text = tk.Text(self, wrap="none")
self.text.pack(fill="both", expand=True)
self.text.bind("<ButtonRelease-1>", self._on_click)
self.text.tag_configure("highlight", background="green", foreground="black")
with open(__file__, "rU") as f:
data = f.read()
self.text.insert("1.0", data)
def _on_click(self, event):
self.text.tag_add("highlight", "insert wordstart", "insert wordend")
私はそれを試みた :
def _on_click(self, event):
self.text.tag_remove("highlight", "1.0", "end")
self.text.tag_add("highlight", "insert wordstart", "insert wordend")
if self.text.tag_names == ('sel', 'highlight'):
self.text.tag_add("highlight", "insert wordstart", "insert wordend")
else:
self.text.tag_remove("highlight", "1.0", "end")
が、それは運を持っていません。
は、あなたが実際にいくつかのコードの単なる言い換えではなく、試したものをご提示ください。また、試していない場合は 'tag_remove'を使って" highlight "タグを削除してください。 –
@BryanOakley私はあなたが要求した詳細を追加しました:) –