mmc*_*coo 10 perl user-interface
我想在Perl中编写一些交互式GUI.我使用过TclTk,但看起来过时了.我已经为C++编写了QT代码,但是PerlTk模块在几年内还没有发布.谷歌搜索我看到其他可能的选择.
什么是好的包,包括基本窗口,菜单,绘图画布,滚动条等.
Cha*_*ens 13
GTK2有glade2会能写出通过使用XML文件GTK2 :: GladeXML.以下是如何将XML与应用程序捆绑在同一文件中的示例.
我一开始误解了这个问题.我以为你想要一个用于制作GUI的GUI编辑器(这就是glade2).您还可以使用Gtk2创建GUI而不使用glade2:
#!/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;
Run Code Online (Sandbox Code Playgroud)
与Chas Owens相呼应,林间空地非常适用于Perl中的Gtk2.此外,Gtk2还支持GtkBuilder文件(您也可以创建最新的版本).
wxPerl(和wxWidgets本身)的主要问题是它不允许你将文件事件监视器安装到它的主循环中(它只有GUI,Socket和Timer事件),这与Tk和Gtk不同.
Qt,Tk和Gtk2事件循环可以在Perl中与AnyEvent一起使用,并且Gtk2可以通过Glib :: Event和Glib :: EV模块连接到运行Event或Ev mainloop的应用程序中.
归档时间: |
|
查看次数: |
8702 次 |
最近记录: |