• ベストアンサー

Windowsでperl/tkに挑戦

windows 98SE 上で perl/tk を使って GUI プログラミングに挑戦!と思ったのですが、 MainWindow が出る前に、必ず DOS窓が一瞬現れて消えるのが、どうも気になります。 この DOS窓を出さない方法はあるのでしょうか? よろしくお願いします。

  • Perl
  • 回答数1
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
noname#205142
noname#205142
回答No.1

perl.exeではなくwperl.exeがスクリプトを実行するように仕込んでおけば、コマンドプロンプトを表示せずに起動するようになります。 例えばWindows + ActivePerlでは通常は拡張子*.plをperl.exeで起動するように設定していると思いますので拡張子*.wplとかをwperl.exeで起動するように設定しておけばコマンドプロンプト無しで処理されます。

参考URL:
http://www.mail-archive.com/activeperl@listserv.activestate.com/msg06024.html
tohohoho
質問者

お礼

素晴らしい!。うまくいきました。 諦めかけてたので、大変うれしいです。 ありがとうございました。

関連するQ&A

  • perl/tkを使って作ったGUIを実行すると。。。

    perl/tkを使って作ったGUIを実行すると、DOS窓が開いたままの状態です。 GUIを閉じるとDOS窓も閉じます。 GUIを実行中、DOS窓が開かないようにできないのでしょうか? perlのバージョンはv5.8.8。 osはxpです。

    • ベストアンサー
    • Perl
  • Perl/Tkで、Entryが上手く扱えません

    GUIプログラミングを始めようと思い、Perlを少しかじっていることもあり、Perl/Tkを選びました。CentOS5にソース(Tk-804.027.tar.gz)からインストールを行い、オライリーの「入門Perl/Tk」に沿って勉強しています。 順調に各ウィジェットを使えていますが、Entryに関しては上手くいっていません。 以下のようなプログラムで問題が起こります。 01 #!/usr/bin/perl -w 02 03 use Tk; 04 05 $buffer = ""; 06 07 $top = MainWindow->new(); 08 09 $top->Entry( -textvariable => \$buffer )->pack(); 10 $top->Button(-text => "EXIT", -command => sub { exit })->pack(); 11 MainLoop; 状況としては、9行目で作成されるエントリが文字入力を受け付けてくれないのです。 しかし、10行目のボタンを作成するプログラムを削除すると入力を受け付けてくれます。 widgetコマンドで見られるサンプルも一部は入力できますが、すべてのエントリに入力できるものはありませんでした。 どなたか原因のわかる方、よろしくお願いします。

  • Perl/Tk使う利点は?

    Perl/Tkを使うとGUIアプリが作れるそうですが、、、、そこで質問です。 (1)C++、Java、Delphiなどではなく Perl/Tkを使う利点はなんですか? (2)Linux、Windows間での移植性はどうですか? (3)Perlなので、やっぱり遅いのでしょうか。

    • ベストアンサー
    • Perl
  • perl Tk を使ったWindows向けのGUIのスクリプトをpar

    perl Tk を使ったWindows向けのGUIのスクリプトをparモジュールをつかってEXE化 しました。作成されたEXEを実行するとDOSプロンプトが開いてしまうのですが、DOSプロンプトが表示しないようにする方法ってありますか?

  • perl 出力について

    Win98SEのDOS窓で、たとえば perl -w a.cgi というふうにするとエラーなどがDOS窓に出力されると思いますが、それがたくさんあるとスクロールして上のほうが見れないんですがどうすれば見れるのでしょうか? >a.txt などと付け加えると処理結果(?)はファイルに出力されるのですが、エラーのメッセージなどはファイルに出力されません、DOS窓に表示されたままです。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • perl/tk のScrollbarについて

    下のように縦にボタンを100個配置した場合、どのようにスクロールバーを設定するのですか?表現がまずいかもしれませんが、MainWindowの縦にスクロールバーを配置したいのですが、方法がわかりません。 -------------------------------------------------------- #!c:\perl\bin\perl.exe use Tk; $top = MainWindow->new(); #ボタン $button_1 = $top->Button( -text => "ボタン1",-command => \&filemake ) ->grid(); $button_2 = $top->Button( -text => "ボタン2",-command => \&filemake ) ->grid(); $button_3 = $top->Button( -text => "ボタン3",-command => \&filemake ) ->grid(); $button_4 = $top->Button( -text => "ボタン4",-command => \&filemake ) ->grid(); $button_5 = $top->Button( -text => "ボタン5",-command => \&filemake ) ->grid(); $button_6 = $top->Button( -text => "ボタン6",-command => \&filemake ) ->grid(); . . . $button_99 = $top->Button( -text => "ボタン99",-command => \&filemake ) ->grid(); $button_100 = $top->Button( -text => "ボタン100",-command => \&filemake ) ->grid(); MainLoop();

    • ベストアンサー
    • Perl
  • Perl/TkでURLを既定のブラウザで開く方法

    Perl/TkでGUIプログラミングをしております。 プログラム中のButtonを押した時に自分のパソコンに設定している 既定のブラウザでWEBサイトを開くにはどうすればいいでしょうか? イメージは下記のような感じです。 use Tk; use Encode; $url = "http://okwave.jp/"; $main->Button(-text=>decode("cp932","URLを開く"),-font => ["MS ゴシック", 12], -command => \&open_url) ->grid(-row=>0,-column=>0); sub open_url{ # 既定のブラウザでURL($url)を開く処理 } よろしくお願いします。

    • ベストアンサー
    • Perl
  • Perl/Tk使用時のUTF-8コード文字の表示

    Windows98SE上でActivePerl5.8.0使用です。  #Perlはここ数年愛用していますが、Tkは数日手をつけただけの初心者です 例えば、  print OUT "☆ Hi! ★\n" ; #☆★はUTF-8 のようにファイルにUTF-8コードで書き出すことは可能ですが、 Tkを用いてWindowにUTF-8コードの文字を表示させようとすると失敗します。 例えば、Windowのタイトルを  $top -> title('☆test1★') ; #☆★はUTF-8 とすると、表示は「笘・est1笘・」と文字化けしてしまいます。 Perl/Tkで作成したWindow上でUTF-8コードの文字を表示させる方法は無いでしょうか?

    • ベストアンサー
    • Perl
  • Perl Tkでタイマーイベントは発生できる?

    Perl Tkでタイマーイベントは発生できるのでしょうか? 1秒毎に、例えばa.gifという画像をCanvas上で上から下に落ちていく(前の画像は残さない)スクリプトを書きたいのですが、可能でしょうか?

    • ベストアンサー
    • Perl
  • Perl/Tk Entry に対して見出しを付けたい

    Win-XP,Active-Perl(v5.8.6)利用です。 複数のインプットボックスを持つ、 ┌────────────┐ │   ┌───────┐│ │品名:│       ││ │   └───────┘│ │   ┌───────┐│ │科目:│       ││ │   └───────┘│ │   ┌───────┐│ │価格:│       ││ │   └───────┘│ │ ┌──┐┌─────┐│ │ │OK││キャンセル││ │ └──┘└─────┘│ └────────────┘ こんな感じのウィンドウを作りたいのですが、 (図が崩れているかも知れませんが大体のイメージで・・・) ======================================== use Tk; $top = new MainWindow; $arg[0] = $top->Entry(-title=>'品名:')->pack; $arg[1] = $top->Entry(-title=>'科目:')->pack; $arg[2] = $top->Entry(-title=>'価格:')->pack; $b[0] = $top->Button(-text=>'OK',-command=> [\&exec,\@arg])->pack; $b[1] = $top->Button(-text=>'キャンセル',-command=> [\&exec,(-1)])-pack; ======================================== unknown option "-title" at C:\Perl\site\lib/Tk/Widget.pm Entryに対するオプションが分かりませんでした。 もしくは、Label や Message を組み合わせて実現するものでしょうか。 あと、実際に図のような配置でフォームを作りたい場合、 Buttonの部分の書き方はどのようにすれば良いですか? 以上、ご存知の方、ご教示よろしくお願い致します。

    • ベストアンサー
    • Perl