• []
  • []
  •  
  • del.icio.us 
  •  
  • Yahoo!֥åޡϿ 

PRADO 画面遷移制御 ウィザードコンポーネント

PHP 求人 募集 Symfony CakePHP Smarty Ruby on Rails

PRADO 画面遷移制御 ウィザードコンポーネント 概要

PRADOの最大の特徴であるウィザードコンポーネント。
他のフレームワークには画面遷移を制御する機能はない。
せいぜいジェネレータが出力するぐらいだろう。
しかし、PRADOには画面遷移を制御機能が標準搭載されている。
例え画面が何枚あっても非常に簡単に設置できる。

PRADO 画面遷移制御 ウィザードコンポーネント サンプル

3画面に渡る入力ページがあったとして、
それを実装してみよう。 /protected/WizardSample.php

<?php
class WizardSample extends TPage{
  public function wizardCompleted( $sender, $param ){
    $this->Result1->Text = "変な名前: " . $this->name->Text;
    $this->Result2->Text = "仕事しろ: " . $this->job->Text;
    $this->Result3->Text = "?: " . $this->comment->Text;
  }
}

/protected/WizardSample.page

<html>
<head>
<meta http-equiv="Content-Type" content="utf-8" />
</head>
<body>
<com:TForm>
<com:TWizard ID="Wizard1" 
 OnActiveStepChanged="wizardCompleted">
  <com:TWizardStep ID="WizardStep1" Title="Step 1">
    名前は?:<br />
    <com:TTextBox ID="name" AutoTrim="true" />
  </com:TWizardStep>
  <com:TWizardStep ID="WizardStep2" Title="Step 2">
    職業は?:<br />
    <com:TRadioButtonList ID="job">
      <com:TListItem Value="イエ男" Text="イエ男" />
      <com:TListItem Value="ヒキコモリ" Text="ヒキコモリ" />
      <com:TListItem Value="ニート" Text="ニート" />
    </com:TRadioButtonList>
  </com:TWizardStep>
  <com:TWizardStep ID="WizardStep3" Title="Step 3">
    コメントを:<br />
    <com:TTextBox ID="comment" AutoTrim="true" TextMode="MultiLine" />
  </com:TWizardStep>
  <com:TWizardStep ID="WizardStep4" Title="end" StepType="Complete">
    <com:TLabel ID="Result1" /><br />
    <com:TLabel ID="Result2" /><br />
    <com:TLabel ID="Result3" /><br />
  </com:TWizardStep>
</com:TWizard>
</com:TForm>
</body>
</html>

どうだろうか?
プログラミングをした感じは全然しないと思う。


framework/prado/wizard.txt · 最終更新: 2007/07/15 02:45 by dozo