如何在我的curses程序中实现类似vim的 "命令行"?

问题描述 投票:0回答:1

我是python的新手,想做一个小的待办事项程序,用诅咒来取乐。

这是我现在的基本代码。

import curses

mylist = ['item1', 'item2', 'item3']

def main(stdscr):
    y = 1
    x = 1

    for item in mylist:
        stdscr.addstr(y, x, item)
        y += 1

    stdscr.getch()

curses.wrapper(main)

它创建了一个窗口,并显示 "mylist "中的每一个项目,我想扩展这个功能,让用户可以输入一个命令,比如说,在列表中添加一个新的任务,并让屏幕更新以显示新的任务,我怎样才能实现这个目标?

python python-3.x ncurses curses
1个回答
0
投票

如果你使用 curses.echo()stdscr.getstr(x, y) 它就会显示您输入的任何内容。

import curses

mylist = ['item1', 'item2', 'item3']

def main(stdscr):
    curses.echo()
    y = 1
    x = 1

    for item in mylist:
        stdscr.addstr(y, x, item)
        y += 1
    new_item = stdscr.getstr(y, x)

curses.wrapper(main)
© www.soinside.com 2019 - 2024. All rights reserved.