fu7mu4’s diary

はてなダイアリーから移転しました。

perltkで遊ぶ

CUIでいいじゃない〜と思うんだけど、GUIがほしい、ほしいというので、perltkにも手を出してみた始末。

ところで、会社のWindowsじゃ、なんだか乗らないし、うまくいかないのに、家のMacだとうまくいくわけはなんだろう。

yasnipetとか?

あと、p5-tkをこのために入れた。

sudo port install p5-tk

ちなみにアップルオリジナルのX11だと文字化けした。
portのX.Orgにして、use utf8を入れることで、文字化けしなくなった。ふふっ。

#!/opt/local/bin/perl

use Tk;
use strict;
use warnings;
use utf8;

my $mw;
my $buffer="initial state";

$mw= new MainWindow;
$mw->title("Hello Perl/Tk");

$mw->Label(-text => "初めてのperl/Tkプログラム", -foreground => 'red') ->pack();

$mw->Button(-textvariable => \$buffer, -command => \&test) ->pack();

$mw->Button(-text => "ハロー", -command => \&print_hello) ->pack();

$mw->Button(-text => "終了", -command => sub { exit; }) ->pack();

MainLoop;

sub print_hello {
    $buffer = "final state";
    printf "ハローperl/Tk\n";
}

sub test {
    $buffer = "new state";
    printf "test";
}