使用curses库无法停止箭头键在Python中回显到控制台

土豆杰克逊

下面是我的代码。我正在尝试制作一个简单的文本编辑器,并尝试确保不会将箭头键打印到控制台上,但仍然可以。有什么帮助吗?

import curses

text = []


def main(screen):
    curses.curs_set(1)
    curses.noecho()

    while True:
        newChar = screen.getkey()

        if newChar != curses.KEY_LEFT or curses.KEY_RIGHT or curses.KEY_UP or curses.KEY_DOWN:
            text.append(newChar)

        screen.addstr(0, 0, "".join(text))
        screen.refresh()


curses.wrapper(main)```
土豆杰克逊

哎呀,我发现了问题所在。比较if语句中的值的问题解决了我自己的问题。伊皮

import curses

text = []


def main(screen):
        curses.curs_set(1)

        while True:
            newChar = screen.getch()

            if newChar not in [curses.KEY_LEFT, curses.KEY_RIGHT, curses.KEY_UP, curses.KEY_DOWN]:
                screen.addstr(0, 0, curses.keyname(newChar))
                screen.refresh()


curses.wrapper(main)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章