ここに来る前にインターネットを検索しました。みんなのニーズは違うと思います。データベースから情報を取得してグリッドに表示し、各レコードの横に削除ボタンがあるWindowsGUIプログラムが必要です。また、リンクを設定したいのですが、たとえば、レコードのID番号をクリックすると、新しいブラウザーが開き、それに関連付けられたページに移動し、フォームに入力して、それ自体で送信します。
問題は、モジュールがたくさんあるので、どれがこれに最適かということです。
(Perl Nubie)
ここに来る前にインターネットを検索しました。みんなのニーズは違うと思います。データベースから情報を取得してグリッドに表示し、各レコードの横に削除ボタンがあるWindowsGUIプログラムが必要です。また、リンクを設定したいのですが、たとえば、レコードのID番号をクリックすると、新しいブラウザーが開き、それに関連付けられたページに移動し、フォームに入力して、それ自体で送信します。
問題は、モジュールがたくさんあるので、どれがこれに最適かということです。
(Perl Nubie)
誰も本当に何が最善かを言うことはでき ませんが Tk
、あなたの場合、バックエンドを備えたモジュールのオプションはDBD::MySQL
、Perlでのこのようなもののおそらく最も「標準」です。両方の例は、オンラインのいたるところにあります。
mySQLとDBDを使用したSQLのいくつかを次に示します。
http://sql-info.de/mysql/examples/Perl-DBI-examples.html
perlTKの例の良いドキュメントは次のとおりです。
http://www.ibm.com/developerworks/aix/library/au-perltkmodule/index.html
ブラウザを開く限り、単純なシステムコマンドで次のことができます。
my @command = ('start', $url);
system(@command);
^それはWindows用です。構築したいかなり大きなアプリケーションがあるようです-ブラウザを開くことはそのほんの一部です-間違いなく、ボタンが押されたときに上記を実行したいと思うでしょう。
最後の部分...Web上のフォームにデータを送信することは、「Webクロール」と呼ばれるトピックです... WWW::Mechanize
調査するライブラリです-Googleの「perlWebクローラー」であり、より良い例を得ることができます。
私は少し検索してこれを見つけました-それはあなたに役立つようです:
http://www.stratos.me/2009/05/writing-a-simple-web-crawler-in-perl/
1つの(厄介な)前提条件を与えます。25行のHTML
<html>
<head>
<hta:application id="demo" scroll="No"></hta>
<title>Demo</title>
<script language = "PerlScript"
src = "demo.pl"
type = "text/perlscript"
></script>
</head>
<body onload="DoOnLoad()" onunload="DoOnUnLoad()">
<object classid = "clsid:67397AA3-7FB1-11D0-B148-00A0C922E820"
id = "id_oDC"
style = "position:relative;width:1px;height:1px"
></object>
<object classid = "clsid:CDE57A43-8B86-11D0-B3C6-00A0C90AEA82"
id = "id_oDG"
style = "position:relative;width:100%;height:95%"
></object>
</body>
</html>
と約。Perlの40行:
use strict;
use warnings;
use Win32::OLE qw( in );
use Win32::OLE::Const 'Microsoft ActiveX Data Objects';
use vars qw( $window );
my $oAdoDC;
my $oAdoDG;
sub DoOnLoad {
my $owda = $window->document->all;
$oAdoDC = $owda->id_oDC;
$oAdoDC->{ConnectionString} = 'DSN=SakilaGent';
$oAdoDG = $owda->id_oDG;
$oAdoDC->{CursorType} = adOpenKeyset;
$oAdoDG->Font->{Name} = "Arial";
$oAdoDG->Font->{Size} = "8";
$oAdoDG->HeadFont->{Name} = "Arial";
$oAdoDG->HeadFont->{Size} = "8";
$oAdoDC->{RecordSource} = "select * from customer";
$oAdoDG->{Caption} = $oAdoDC->{RecordSource};
$oAdoDC->Refresh();
$oAdoDG->{DataSource} = $oAdoDC;
}
sub DoOnUnLoad {
$oAdoDG->{ DataSource }->Close();
$oAdoDC->{ Recordset }->Close();
$oAdoDG = undef;
$oAdoDC = undef;
}
'ADOでアクセス可能なすべてのデータベースのすべてのレコードセットを'表示/編集する'タイプのデータグリッドを柔軟に提供します。
無料で。HTML(TkやWxは除く)とADO / Access / Excel(DBIは除く)に精通している人は、優れたデータベースGUIを簡単かつ効率的に構築できます。前提条件(つまり欠点)は次のとおりです。展開コンピューターでさえ、「Microsoft DataGrid Control 6.0(OLEDB)」が必要です(プレーンな表形式、階層型、および柔軟な階層型グリッドコントロールもあります。おそらく、より最新のコントロールを使用できます。また)開発/設計時対応モードでインストールされます。
私は使用することをお勧めします:
Windowsを使用しているので、SQLiteとMechanizeを含むStrawberryPerlをインストールするのが最善の策です。WxまたはTkのインストールは追加の手順ですが、インストールした他のユーザーからWeb上でチュートリアルを見つけることができるはずです。また、Perlエディター/開発環境であるPerl IDEであるPadreも確認することをお勧めします(Wxも使用されます)。