题
这可能与我的诅咒比用Perl更多的理解有问题,但请帮助我。我使用Curses.pm它工作得很好,除了当我尝试创建一个诅咒“窗口”。示例代码:
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的语法。
在newwin
功能,在 curs_window 手册页中,需要:
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;
不隶属于 StackOverflow