Home > CGI > スタンドアローンなPerl

Tk.pmとPAR.pmの実験

Perlでデスクトップアクセサリを作ろう!

 Perlといえば、テキスト処理。そんなイメージがありますが、Tkモジュールを使えば、GUIなものも簡単につくれるわけです。そこで今回は癒し系アプリケーション、「アメリカン・ジョニィ」を作成しました。

 起動するとデスクトップに亜米利加合衆国のナイスガイが常駐して、貴方の心を和ましてくれるでしょう。

Windows用アプリケーション

 ソースは一番最後に用意してあります。ただし、Tkモジュールが必要になりますので、場合によってはハードルが高いかもしれません。……しかしながら、今回の目玉は、このスクリプトをWindows用アプリケーションにしたことです。Windowsユーザーの方は、下記のプログラムをダウンロードして実行するだけで、ジョニィに会うことができるでしょう。これはPARというモジュールに付属のppというユーティリティを使って、perlをはじめとする必要なモジュール一式をexeファイルにまとめあげたものです。このおかげで、スタンドアローンなアプリケーションを提供することができるようになりました。

pretty.exe v1.01 (md5sum 43e0d1945f2f93a36d2e462fe528abde)
 1.94Mとかなり大きめなので、ご注意ください。

※2003-09-25 v.1.01

使い方

Source

 ソースはこちらです。とはいっても、今回急ごしらえでつくったため、汎用性はありません。次回バージョンアップのときは、プログラムから完全に独立したデータで、このナイスガイを操れるようにしたいと思います。ま、今回は急ぎの一発ネタですので。

PARについて

ppを使う

pp -o hoge.exe test.pl これでtest.plは単体で実行可能なhoge.exeにパックされます。出力を指定しないとWindowsではa.exeに、UnixやLinuxではa.outに。もちろんできた実行ファイルはプラットフォームが同じならPerlがインストールされていなくても使えるわけです。

Windowsでスタンドアロンな実行形式にする場合

 何もせずに実行形式にすると、exeファイルを起動する度にコンソール画面も表示されて美しくありません。そこで--guiオプションをつけると、コンソール画面が表示されなくなります。また、--iconオプションで好きなアイコンを使うことができます。デフォルトでは白い駱駝になります。

Perl/Tkで書かれたGUIフロントエンド

 PAR-0.76にはDoug Gruber <doug(a)dougthug.com>氏がつくったppへのGUIフロントエンドtkppが含まれています。Windows用に日本語化したファイルをつくってみましたので、暇なら使ってみてくだちいな。Windows2000でしか動作確認してないので、正しく日本語が表示されているのかどうかいまいち自信ありません。言うまでもなく、Tkモジュールが必要です。

Active Perlならwperlが入っていますので、コマンドプロンプトからwperl tkpp。あるいは普通にperl tkpp

 Tk::Splashscreenがインストールされているとスプラッシュ画面が表示される

ページの先頭