Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法使用诅咒获取密钥_Python_Python 3.x_Listener_Curses - Fatal编程技术网

Python 无法使用诅咒获取密钥

Python 无法使用诅咒获取密钥,python,python-3.x,listener,curses,Python,Python 3.x,Listener,Curses,我试图用诅咒来显示一些统计数据,但我确实面临一个问题 我想有一个窗口,允许滚动感谢键盘。为此,我创建了一个变量self.scroll,它告诉我应该显示哪些行。问题是每当我按下按键时,我想增加这个变量 这是我的密码: 在类的init中,我有: self.stdscr = stdscr self.scroll = 0 stdscr.nodelay(1) stdscr.keypad(1) 然后: while True: ch = self.st

我试图用诅咒来显示一些统计数据,但我确实面临一个问题

我想有一个窗口,允许滚动感谢键盘。为此,我创建了一个变量self.scroll,它告诉我应该显示哪些行。问题是每当我按下按键时,我想增加这个变量

这是我的密码: 在类的init中,我有:

    self.stdscr = stdscr
    self.scroll = 0
    stdscr.nodelay(1)
    stdscr.keypad(1)
然后:

    while True:
        ch = self.stdscr.getch()
        if ch == curses.KEY_DOWN:
            self.scroll += 1
            self.add_alert()
            ch = None
        elif ch == curses.KEY_UP:
            if self.scroll >= 1:
                self.scroll -= 1
            self.add_alert()
            ch = None
我还使用了一个可以找到的包装器来初始化所有内容

事实上,无论发生什么情况,变量滚动都会停留在0。此外,我每次按下时都会看到我按下的每个键(例如^[[A]),即使设置了noecho()。 我使用了nodelay(),因为我的线程也在处理一些事情,我不希望它在等待按键时停止。 你知道它会从哪里来吗

非常感谢,
Djaz

如果使用
节点延迟
,则会干扰
键盘
。请使用
超时
,并使用较短的超时值。(对于大多数人来说,10毫秒的超时时间适用).

最后,它从一开始就起作用了。问题是,出于一些奇怪的原因,诅咒没有检测到键向上和键向下。我只是用u和d替换了它们

if ch == ord('p'):
一切正常


谢谢大家!

您好,非常感谢!我不知道我怎么会在文档中遗漏了这一点。不幸的是,我的变量没有递增。我的代码中有几个窗口,我是否需要全部输入键盘(1)和超时(10)?