Используйте A.join(B)
.
Результат:
X Y
4 1 3
5 2 4
Присоединение происходит по индексу, а значение из B
для ключа 5
отсутствует, поскольку A
не содержит этот ключ.
Gtk2 имеет glade2, который может выписать XML-файл, применимый Gtk2:: GladeXML. Вот пример того, как связать XML приложением в том же файле.
Я неправильно читал вопрос сначала. Я думал, что Вы хотели редактора GUI для того, чтобы сделать графический интерфейсы пользователя (который является тем, что glade2). Можно также создать графический интерфейсы пользователя с помощью Gtk2 без 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;
Попробуйте wxPerl!
С веб-сайта:
wxPerl является дополнительным модулем, позволяющим создание GUI (Графический интерфейс пользователя) от Perl; это создается как обертка для потрясающего wxWidgets C++ инструментарий GUI.
Разработчик GUI для WxPerl был бы wxGlade или wxFormBuilder, обоими открытыми исходными кодами.
Отзывающийся эхом Chas Owens, поляна довольно применима с Gtk2 в Perl. Кроме того, Gtk2 также поддерживает файлы GtkBuilder (который можно создать последнюю поляну также).
Основная проблема с wxPerl (и сам wxWidgets) состоит в том, что он не позволяет Вам установить наблюдателей события файла в его основной цикл (он только имеет GUI, события Socket и Timer), в отличие от Tk и Gtk.
QT, Tk и циклы событий Gtk2 могут использоваться в Perl с AnyEvent, и Gtk2 может быть сцеплен в приложения, выполняющие Событие или Ev mainloop с Бойким:: Событие и Бойкий:: модули EV.
Я, вероятно, использовал бы Gtk2, но Tk определенно не мертв. Отсутствие выпусков происходит из-за ошибок, сглаживаемых за эти годы. Много людей все еще использует его, и это обычно хорошо работает. (Цикл событий Tk несколько глуп, но это - деталь, которая, вероятно, не должна касаться Вас.) Единственный недостаток - то, что Ваш GUI похож на него, с 1996, но кто заботится?
( gitk
инструмент, включенный с мерзавцем, показал, что графический интерфейсы пользователя Tk выглядят хорошо, пока они полезны.)
У меня нет реального ответа для Вас, но часто необходимо рассмотреть цели развертывания. Некоторые библиотеки GUI очень хороши, но только если можно заставить их работать над операционной системой. Я не обязательно думаю, что все платформы должны быть межплатформенные совместимый, очень похвальная цель работать к в идеальном мире, целый тот, который Вы выбираете, не блокирует значительную часть Ваших пользователей, потому что библиотеки GUI основы трудно установить или поддерживать на конкретной платформе.
Решением, с которым я иду, является Gtk-Perl. Сначала я испытал затруднения при установке его, но в конце я нашел Camelbox Perl+Gtk2 в одном пакете.
Я просто хочу сообщить всем, что PerlQt великолепен, и на этом сайте есть множество руководств по его использованию и множество примеров для загрузки.
PerlQt - это очень быстрый и простой способ создавать великолепно выглядящие программы с графическим интерфейсом, используя конструктор форм Qt с перетаскиванием и Perl. PerlQt достаточно мощный для продвинутых разработчиков и прост для новичков.