1

ここに来る前にインターネットを検索しました。みんなのニーズは違うと思います。データベースから情報を取得してグリッドに表示し、各レコードの横に削除ボタンがあるWindowsGUIプログラムが必要です。また、リンクを設定したいのですが、たとえば、レコードのID番号をクリックすると、新しいブラウザーが開き、それに関連付けられたページに移動し、フォームに入力して、それ自体で送信します。

問題は、モジュールがたくさんあるので、どれがこれに最適かということです。

(Perl Nubie)

4

3 に答える 3

3

誰も本当に何が最善かを言うことはでき ませんが 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/

于 2012-06-20T14:47:20.040 に答える
3

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でアクセス可能なすべてのデータベースのすべてのレコードセットを'表示/編集する'タイプのデータグリッドを柔軟に提供します。

ADOグリッド

無料で。HTML(TkやWxは除く)とADO / Access / Excel(DBIは除く)に精通している人は、優れたデータベースGUIを簡単かつ効率的に構築できます。前提条件(つまり欠点)は次のとおりです。展開コンピューターでさえ、「Microsoft DataGrid Control 6.0(OLEDB)」が必要です(プレーンな表形式、階層型、および柔軟な階層型グリッドコントロールもあります。おそらく、より最新のコントロールを使用できます。また)開発/設計時対応モードでインストールされます。

于 2012-06-24T16:13:38.200 に答える
2

私は使用することをお勧めします:

Windowsを使用しているので、SQLiteとMechanizeを含むStrawberryPerlをインストールするのが最善の策です。WxまたはTkのインストールは追加の手順ですが、インストールした他のユーザーからWeb上でチュートリアルを見つけることができるはずです。また、Perlエディター/開発環境であるPerl IDEであるPadreも確認することをお勧めします(Wxも使用されます)。

于 2012-06-23T12:12:21.757 に答える