Win2000+ActivePerl 5.8.7 の環境です。
PerlでGUIということで、メッセージボックスであれば、次のようにして実現できました。
------------
use Win32;
my $msg = $ARGV[0];
my $icon = $ARGV[1];
my $caption = $ARGV[2];
my $result = Win32::MsgBox($msg, $ico, $caption);
print "$result\n";
------------
これと同様に、InputBoxのようなこと
--------------------------------
ダイアログウィンドウを表示し、文字列の入力を促して、
Enterすると、スクリプト内の関数戻り値として、その文字列を
取得できるようなもの。
--------------------------------
が出来ないでしょうか。
ネット上色々と探し回ってみましたが、単純には見つかりませんでした。
( Haven't yet implemented function inputbox...)
何か自分で組み合わせて作成する必要があるのでしょうか?
(DOS窓経由であれば、単純に、$txt=<STDIN>; で取れるのですが)
よろしくご教示ください。
No.1ベストアンサー
- 回答日時:
こんなんどうでしょう。
ちょっと長いですが、複数の情報を取得したり拡張性はあります。
use Tk;
my $top = MainWindow->new();
my $ent_txt = "Enter your name.";
my $entry = $top->Entry(-textvariable=> \$ent_txt, -width=>'20' );
$entry->pack(-side=>'left');
my $btn1 = $top->Button(-text=>'OK',-command=> [\&get_name,\$ent_txt] );
$btn1->pack(-side=>'left');
my $btn2 = $top->Button(-text=>'C',-command=> sub{$ent_txt='';} );
$btn2->pack(-side=>'left');
MainLoop;
sub get_name{
$top->destroy();
my $ref_input = shift;
my $input = $$ref_input;
print "Your name is $input.";
}
この回答への補足
ご回答、大変ありがとうございました。
ちなみに、Perl/Tk というものを使わずに、
同様のことは出来るのでしょうか?
(Perl/Tkが入っておらず、ネットにもつなげないような環境に
遭遇した時を想定してのことですが、無用な心配でしょうか・・・)
そうです、こんな感じのやつを求めていました。
use Tk;・・・使えるのかなと思ったら、あっさり動きました。
ActivePerlもv5.xx辺りになると、ほとんど標準でPerl/Tk というのが付いてくるんですね。
今さら常識なのでしょうか、遅れていて恥ずかしい限りです。
----
http://www.geocities.jp/m_hiroi/perl_tk/perltk_g …
からの引用で、
「Perl/Tk でプログラムを作成する場合、 Perl 5 で導入された機能「オブジェクト指向」と「リファレンス」の知識が必要になります・・・
・・・これらの機能を理解していないと Perl/Tk を使いこなすことは難しいのですが・・・」
うわ、理解してないので、大変そうです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語 配列とポインタについて 3 2023/02/09 22:53
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- 英語 「this is the/my first time~」の文法上の制約について 1 2023/04/06 09:48
- Visual Basic(VBA) VBA初心者です 検索した数字の行に色をつける 5 2023/02/13 14:22
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
- Perl perlをバージョンアップしたら、今まで正常に動いていたプログラムが、エラーになってしまった 3 2022/10/05 15:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
perlをバージョンアップしたら...
-
Perlでファイルの末尾から指定...
-
英数文字列のうちの数値を4桁に...
-
#!/usr/bin/perlで書きだしたCG...
-
bashスクリプト
-
ファイルアイコンの左下に緑の□...
-
perlでリテラル値はメモリにど...
-
perlについて
-
Perlで特定文字列から特定文字...
-
CGIでimgタグでalignを使うとエ...
-
Perlの例文でif($a==1&&$b==5&&...
-
テキストファイルで提出とは?
-
Perl の外部モジュールの利用方法
-
アルファベットに付いて質問し...
-
Perlのエラーについてご教授く...
-
AI sisterとは、偽物の人ですか?
-
perlプログラミング 空白行削除
-
perlで2次元配列をサブルーチ...
-
Perlで時間の計算
-
perlのrequireの動き方について...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VHDLについてですが何がお...
-
Perl/TkのWWW::MechanizeのGET...
-
LWP::Simpleでのgetについて
-
Perl/TkでURLを既定のブラウザ...
-
LWPでHTMLが取得できないことが...
-
XML::XPathを使う
-
URI.pmの使い方を教えてくださ...
-
Perlでgoogle newsのRSSを取得...
-
mechanizeのタイムアウト処理に...
-
例外処理のフローチャートの記...
-
Excel VBAでリンク切れをチェッ...
-
ユーザー定義関数に#NAME?が返...
-
VBAで別モジュールへの変数の受...
-
"JScript"が見つかりません!
-
VBSがコンパイルエラーになりま...
-
VBでグローバル変数を宣言するには
-
エクセルVBAでシートモジュール...
-
「デバイスは PRN を初期化でき...
-
VBA This Workbookモジュール...
-
モジュールの最大数はいくつな...
おすすめ情報