我有一个运行在Windows中的Perl脚本,显示屏幕非常长的行。
我不想永久修复我的控制台大小。 我只是希望它是很大的脚本运行的情况下。
有没有一种方法可以在此窗口中运行的Perl脚本中定义控制台的大小?
您可以使用mode
命令设置正在运行的控制台的控制台大小:
mode con lines=50 cols=200
只有在控制台窗口关闭之前,更改才会持续。
请参阅Win32 :: Console 。 示例程序有一个适用于我的Windows XP SP3的调整大小的演示。 我没有在其他地方尝试过。
另外,使用一个简单的由简单的文本框组成的GUI可能会更容易。
以下是示例脚本中的testWindow
改编:
use strict; use warnings; use Win32::Console; my $OUT = Win32::Console->new(STD_OUTPUT_HANDLE); my $IN = Win32::Console->new(STD_INPUT_HANDLE); $IN->Mode(ENABLE_MOUSE_INPUT|ENABLE_WINDOW_INPUT); $OUT->Size(180, 200); my ($maxx, $maxy) = $OUT->MaxWindow; $OUT->Cls; $OUT->Cursor(-1, -1, -1, 0); $OUT->FillAttr($BG_YELLOW|$FG_BLUE, $maxy * $maxx, 0, 0); $OUT->FillChar('X', $maxy*$maxx, 0, 0); $OUT->Window(1, 0, 0, $maxx, $maxy); while ($maxx>1 and $maxy>1) { $maxx -= 5; $maxy -= 5; $OUT->Window(1, 0, 0, $maxx, $maxy); sleep 1; } $OUT->Window(1, 0, 80, 50); $OUT->Cls;