修复了带有ncurses的页眉和页脚?

问题描述 投票:3回答:2

我是第一次尝试ncurses(通过UniCurses for Python)。我正在尝试设计一个带有固定页眉和页脚的控制台应用程序,但文档并不清楚我将如何执行此操作。我会用窗户吗?小组?别的什么?我已经弄清楚如何给出一串文本它自己的前景色和背景色,但是不知道如何在控制台窗口的整个长度上扩展它。要了解我正在尝试做什么,请查看以下cmus屏幕截图:

http://cmus.sourceforge.net/#home

顶部的蓝色标题和底部的蓝白色页脚是我想要的。谢谢!

python header footer ncurses
2个回答
2
投票

好吧,想通了。救援的子窗口:

init_pair(1, COLOR_BLACK, COLOR_WHITE)
header = subwin(stdscr, 1, 80, 0, 0)

wattron(header, COLOR_PAIR(1))
waddstr(header, "Title")
wbkgd(header, COLOR_PAIR(1))
wattroff(header, COLOR_PAIR(1))

可能有更好的方法来做到这一点,但这是一个解决方案。


1
投票

使用Python Curses模块

初始化curses并为其提供一种颜色

from curses import *
stdscr = initscr()
start_color()
init_pair(1,COLOR_RED,COLOR_WHITE)

获得屏幕宽度和屏幕高度

max_y, max_x = stdscr.getmaxyx()

创建具有最大终端宽度的子窗口标题

header = stdscr.subwin(1, max_x, 0, 0)

为其中的标题背景和文本着色

header.bkgd(color_pair(1))

wtv你想要它说

header.addstr('Header Text')

显示一切

header.refresh()
© www.soinside.com 2019 - 2024. All rights reserved.