rt
linux下python curses編程,程式啟動時通過screen.getmaxyx()可以獲取螢屏視窗的大小。當視窗大小改變之后,screen.getmaxyx()回傳的還是原來的值,怎么解決?
uj5u.com熱心網友回復:
upup
up
uj5u.com熱心網友回復:
不太懂,是要重繪一下什么嗎?uj5u.com熱心網友回復:
貼一個最簡單的例子
import time
import curses
from curses import wrapper
def screen_size_changed(screen):
count = 0
while True:
time.sleep(1)
if count > 10:
break
count += 1
num_rows, num_cols = screen.getmaxyx()
print("Rows: {}, Colums: {}".format(num_rows, num_cols))
curses.endwin()
if __name__ == "__main__":
screen = curses.initscr()
wrapper(screen_size_changed)
上面代碼的功能是10內列印當前screen的最大尺寸(列印會有點亂,但不影響測驗效果),您可以簡單試試。在這段時間內,你隨意改變視窗尺寸,得到的尺寸值都是不變的。我就是不明白為什么是這樣
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/66789.html
