2017-03-04 18 views
0

我想在Python的Curses中創建一個接口,但是我想知道如何在窗口的終端增加而腳本正在執行時使它更具可移植性。如何製作可移動的curses界面?

例如,該代碼在一個窗口(height:80,width:24)

#!/usr/bin/python 

import curses 
import time 
stdscr = curses.initscr() 
curses.cbreak() 
curses.noecho() 
stdscr.keypad(1) 

try: 
# Run your code here 
    height,width = stdscr.getmaxyx() 
    num = min(height,width) 
    for x in range(num): 
     stdscr.addch(x,x,'X') 
    stdscr.refresh() 
    time.sleep(3) 
finally: 
    curses.nocbreak() 
    stdscr.keypad(0) 
    curses.echo() 
    curses.endwin() 

將工作和將便攜與任何窗口(這將打印整個窗口的大小很多「X」字符),但如果我調整它在執行過程中第二次就不起作用,並且對於終端的某些部分它將是空的。

我該如何讓它按照我想要的方式工作?

+0

的Theres這麼告訴你,當窗口大小的變化稱爲'SIGWINCH'所以我想你需要趕上並獲得新的大小和重繪你詛咒的東西的信號......不知何故:-) –

+0

@MarkSetchell可能你請舉個例子嗎? – SerxWilliam

+0

對不起,我沒有。 –

回答