我想用Perl编写一些交互式GUI。我用过TclTk,但它看起来已经过时了。我已经为C++编写了QT代码,但是PerlTk模块已经有好几年没有发布了。在谷歌上搜索,我看到了其他可能的选择。
最好的包是什么,包括基本的窗口、菜单、画布、滚动条等等。
发布于 2009-03-30 03:04:31
Gtk2具有glade2,它可以写出Gtk2::GladeXML可用的XML文件。下面是同一文件中的example of how to bundle the XML with the app。
一开始我误解了这个问题。我以为你想要一个用来制作GUI的图形用户界面编辑器(这就是glade2 )。您还可以使用不带glade2的Gtk2创建GUI:
#!/usr/bin/perl
use strict;
use warnings;
use Gtk2;
Gtk2->init;
my $window = Gtk2::Window->new;
my $vbox = Gtk2::VBox->new;
my $label = Gtk2::Label->new("Hello World");
my $button = Gtk2::Button->new("Press me");
$window->add($vbox);
$vbox->add($label);
$vbox->add($button);
$window->set_default_size(200, 200);
$window->signal_connect(
destroy => sub {
Gtk2->main_quit;
}
);
my $i = 0;
$button->signal_connect(
clicked => sub {
$label->set_text("button pressed " . ++$i . " times");
}
);
$window->show_all;
Gtk2->main;发布于 2009-03-30 01:07:17
试试wxPerl吧!
来自网站:
wxPerl是一个扩展模块,允许从Perl创建图形用户界面;它是作为令人敬畏的wxWidgets C++图形用户界面工具包的包装器而构建的。
发布于 2009-03-30 04:32:10
与Chas Owens相呼应,glade在Perl中与Gtk2配合使用非常有用。此外,Gtk2还支持GtkBuilder文件(您也可以创建最新的glade )。
与Tk和wxWidgets不同,wxPerl (和Gtk本身)的主要问题是它不允许你在它的主循环中安装文件事件观察器(它只有图形用户界面、套接字和定时器事件)。
Tk和Gtk2事件循环可以在带有AnyEvent的Perl中使用,Gtk2可以通过Glib::Event和Glib::EV模块连接到运行事件或Ev主循环的应用程序。
https://stackoverflow.com/questions/695722
复制相似问题