我想为我的 Perl 程序创建一个简单的 Windows GUI。它基本上需要生成一个窗口,将日志信息写入文本框,并有一个输入框和几个开始/停止按钮。
有人对我使用哪些 Perl 模块有任何提示吗?与我一起工作的人喜欢 Qt,所以这可能是一种偏好,但我不介意。
最佳答案
我确实使用了 Win32::GUI曾经为这样一个简单的项目。主窗口有一个菜单、一个文本框和一些按钮和复选框。它奏效了。
设置GUI的方法摘录(仅供引用):
my @menu_items = (
'&File' => 'File',
' > &Open' => {
-name => 'FileOpen',
-onClick => sub { $self->onFileOpen(@_) },
},
' > &Close' => {
-name => 'FileClose',
-onClick => sub { $self->onFileClose(@_) },
},
' > E&xit' => {
-name => 'FileExit',
-onClick => sub { $self->onFileExit(@_) },
},
'&Help' => 'Help',
' > &About' => {
-name => 'About',
-onClick => sub { $self->onHelpAbout(@_) },
},
);
$self->set_main_menu( Win32::GUI::MakeMenu(@menu_items) );
my $window = $self->set_main_window(
Win32::GUI::Window->new(
-menu => $self->get_main_menu,
-name => 'Main',
-sizable => 0,
-resizable => 0,
-hasmaximize => 0,
-maximizebox => 0,
-title => $self->get_program_name,
-onTerminate => sub { -1 },
-onTimer => sub { $self->onTimer(@_) },
),
);
$self->set_log_field(
$window->AddTextfield(
-name => 'Log',
-font => Win32::GUI::Font->new(
-name => 'LogFont',
-face => 'Courier New',
-size => 9,
),
-multiline => 1,
-wantreturn => 1,
-autovscroll => 1,
-vscroll => 1,
-readonly => 1,
),
);
$self->get_log_field->MaxLength(40000);
$self->set_status_bar(
$window->AddStatusBar(
-name => 'Status',
-text => $self->get_program_name,
),
);
关于windows - 用于创建简单 Microsoft Windows GUI 的 Perl 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1015699/