调整curses终端的大小不会调整程序窗口的大小

时间:2013-02-21 06:07:24

标签: python curses

我在Windows上,curses模块不是本机的,所以我使用的是用于python 3.2的Windows curses模块,找到here

我的目标是调整终端的大小,目前该终端的大小为25行x 80。首先,我尝试了curses.resizeterm(lines, cols)命令,这显然在windows curses模块中找不到(并且hasattr(curses, 'resizeterm')返回false)。所以我看一下替代模块unicurses,也适用于windows,但是甚至没有调整大小命令。

所以我做了更多阅读并了解环境变量'LINES''COLS',当os.environ设置时,应该调整终端的大小。而他们确实如此。终端本身调整大小,但显示终端的Windows程序仍然与之前的大小相同,为25 x 80.我已经确认这两个变量确实已经改变了,写了一些东西在左上角显示它们。此外,box()函数确实在屏幕周围绘制边框,就好像变量已更改一样。

那么,任何人都可以解释1)如何调整“Windows窗口”以匹配终端或2)如何让resizeterm()在我的python安装上工作?我的程序的相关代码和它的外观图片如下所示。

console screenshot

import random, sys, math, curses, os
from curses import *

curses.use_env(True)
os.environ['LINES'] = "80"
os.environ['COLS'] = "60"

stdscr = curses.initscr()
curses.noecho()
curses.cbreak()
curses.start_color()
stdscr.keypad(1)
curses.curs_set(0)

LINES, COLS = stdscr.getmaxyx()

1 个答案:

答案 0 :(得分:0)

此代码可能有帮助:

Model