Модуль Tkx от ActiveState - часть 2
# Создаём кнопку с обработчиком. При нажатии # будет выведен выбранный Radiobutton и текущее # состояние Checkbutton-а my $b = $mw->new_button( -text => "Show status", -command => sub { print "Selected Radiobutton: '$rb_variable'\n"; print "Checkbutton state: '$cb_variable'\n"; } ); $b->g_pack( -side => "top" );
# Запускаем главный цикл обработки событий Tkx::MainLoop(); }
main();
Изменения в коде незначительные, чего не скажешь о внешнем виде:

Вид в Linux

Вид в Windows
Под Windows на таком простом примере различия не видны, но в более сложных приложениях они также будут заметны.
Не смотря на то, что у Tkx открытая лицензиия, широкого распространения в UNIX-системах он пока не получил. Если в вашей UNIX-системе нет соответствующего пакета, потребуется установить по крайней мере два модуля из CPAN: Tkx и Tcl.
В завершение стоит упомянуть про модуль Tcl::Tk, который также работает по принципу "моста".