Ich habe es selbst gemacht, weil Flüche kein Mausradurteil hatten.
Bevor Sie dies lesen, lesen Sie bitte diesen Artikel.
Ich kann kein Radurteil bekommen
Obwohl Flüche eine Mausklickbeurteilung usw. ermöglichen, ist sie unzureichend und eine Radbeurteilung wird durchgeführt. Insbesondere beim Scrollen nach unten gibt es kein Urteil.
Kommentare zum Urteilsteil finden Sie im Artikel über japanische Beiträge. Pseudocode. Ich habe das Fensterobjekt nicht richtig deklariert
import curses
window = curses.stdscr()
key = window.getch()
text_pool = [key]
if 0x00 <= key <= 0x7f:
pass
elif 0x80 <= key <= 0xbf:
print(key)
exit(1)
elif 0xc0 <= key <= 0xdf:
text_pool.append(self.window.getch())
a, b = text_pool
tmp = map(lambda x: bin(x)[2:], [0b00011111 & a, 0b00111111 & b])
tmp = ''.join(item.zfill(6) for item in tmp)
key = int(tmp,2)
elif 0xe0 <= key <= 0xef:
for _ in range(2):
text_pool.append(self.window.getch())
a, b, c = text_pool
tmp = map(lambda x: bin(x)[2:], [0b00001111 & a, 0b00111111 & b, 0b00111111 & c])
tmp = ''.join([item.zfill(6) for item in tmp])
key = int(tmp,2)
elif 0xf0 <= key <= 0xff:
for _ in range(3):
text_pool.append(self.window.getch())
a, b, c ,d = text_pool
tmp = map(lambda x: bin(x)[2:], [0b00000111 & a, 0b00111111 & b, 0b00111111 & c, 0b00111111 & d])
tmp = ''.join([item.zfill(6) for item in tmp])
key = int(tmp,2)
else:
pass
#Tatsächlicher Wert
WHEEL_UP = 65536
WHEEL_DOWN = 2097152
if key == curses.KEY_MOUSE:
#Hier wird die mit der Maus eingegebene Ganzzahl gespeichert
wheel = curses.getmouse()[4]
if wheel == self.WHEEL_UP:
wheel_up_process()
elif wheel == self.WHEEL_DOWN:
wheel_down_process()
else:
print(chr(key)
Recommended Posts