[英]Why doesn't my Perl curses window work?
我對Curses的理解可能比使用Perl更有問題,但請幫幫我。 我正在使用Curses.pm,除非我嘗試創建一個curses“窗口”,否則它的效果非常好。 示例代碼:
use Curses;
initscr;
$w=newwin(1,1,40,40);
$w->addstr(20,20,"Hello");
$w->refresh;
refresh;
endwin;
沒有輸出。 不使用窗口工作正常:
use Curses;
initscr;
$w=newwin(1,1,40,40);
addstr(20,20,"Hello");
refresh;
endwin;
你需要在正確的地方得到你的論點,並且要記住什么數字是不容易的。 在首先嘗試所有錯誤的排列后,我總是要查找它。 我只看一下C接口的手冊頁,然后將其更改為Perl語法。
curs_window手冊頁中記錄的newwin
函數采用:
newwin( height, width, starty, startx )
您設置一個高一行,一列寬的窗口,從第40行第40行開始。然后,您告訴addstr
將文本放在該窗口的第20行第20列。 這超出了您設置的1x1幀,因此您看不到任何內容。
試試這個,看看它是否適合你。 如果可行,請嘗試調整窗口值以獲取所需的幀。
use Curses;
initscr;
$w = newwin(
1, # height (y)
COLS(), # width (x)
0, # start y
1 # start x
);
$w->addstr(
0, # relative y to window
0, # relative x to window
"Hello"
);
$w->refresh();
sleep 10;
endwin;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.