Saya mengalami masalah saat mencoba mengikat kunci umlaut (äöü) ke jendela Tkinter dengan Python 3.

Pesan kesalahan yang dicetak Tkinter pada dasarnya adalah:

Traceback (most recent call last):
    self.tk.bind("Ä", self.take_white_ippon)
_tkinter.TclError: bad ASCII character 0x84

Anda dapat mencoba MCVE ini:

from tkinter import *
tk = Tk()
def doSomething(e=None):
    print("doSomething()")
# The next line is basically ignored
tk.bind("ä", doSomething)
# This line will throw the error message
tk.bind("<ä>", doSomething)
tk.mainloop()

Anda dapat mencoba Alt+0228 untuk memasukkan ä (menggunakan papan angka).

Saya belum menemukan halaman SO/Google lain tentang topik ini. Saya hanya menemukan beberapa pertanyaan tentang masalah umum dengan karakter Tkinter dan non-ascii.

0
MEE - Reinstate Monica 18 Desember 2017, 20:07

1 menjawab

Jawaban Terbaik

Berikut adalah program yang dapat membantu Anda:

import tkinter as tk

root = tk.Tk()
tk.Label(text="you pushed:").pack()
var = tk.StringVar()
tk.Entry(textvariable=var).pack()
root.bind('<Key>', lambda e: var.set(repr(e.keysym)))
root.mainloop()

Jika Anda menjalankannya dan mengetik , Anda akan melihat 'adiaeresis', yang perlu Anda ikat:

tk.bind('<adiaeresis>', doSomething)
2
Novel 18 Desember 2017, 17:30