Python curses.getmouse()
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import curses
screen = curses.initscr()
curses.noecho()
curses.curs_set(0)
screen.keypad(1)
curses.mousemask(1)
screen.addstr("This is a Sample Curses Script\n\n")
while True:
event = screen.getch()
if event == ord("q"): break
if event == curses.KEY_MOUSE: screen.addstr(curses.getmouse())
curses.endwin()
if event == curses.KEY_MOUSE: screen.addstr(curses.getmouse())
Я думаю, что я должен получить текст, где мышь нажата или нет? Все, что я получаю, это TypeError: str
, Это почему? Что мне не хватает? Я не мог найти хорошие учебники по этой теме. Благодарю.
1 ответ
Решение
import curses
screen = curses.initscr()
#curses.noecho()
curses.curs_set(0)
screen.keypad(1)
curses.mousemask(1)
screen.addstr("This is a Sample Curses Script\n\n")
while True:
event = screen.getch()
if event == ord("q"): break
if event == curses.KEY_MOUSE:
_, mx, my, _, _ = curses.getmouse()
y, x = screen.getyx()
screen.addstr(y, x, screen.instr(my, mx, 5))
curses.endwin()
Вы должны прочитать документы более внимательно, это все там:-)