pirkak公式サイト|株式会社 オリエンタルアーツ
HOMEpirka TOP > サンプル集
pirka サンプル集

> 戻る

画面遷移方法


≪サンプル説明≫  

サブミットボタン及びリンクをクリックすると次画面が表示されます。

『新規作成した次画面へ』がクリックされると新規にnewを行った次画面を表示します。

『作成済みの次画面へ』がクリックされるとコンストラクタで作成済みの次画面を表示します。

次画面は作成された時間と表示された回数をメンバーとして保存し、それらを表示するたびに画面に表示します。

このサンプルでは事前に作成されて使用済みの画面オブジェクトでも問題なく
使用できること及び、画面オブジェクトは状態(メンバー変数の内容等)を保持していることが確認できます。


≪作成時注意点≫ 

・ボタンやリンクがクリックされた時に呼び出されるアクションメソッドで
 PirkaWindowから派生させて作成したクラスのオブジェクトをreturn値として
 戻すことにより、そのクラスに対応する画面が表示されます。
  
 また、nullを戻すと今表示されている画面を呼び出した画面に画面遷移します。


ソースファイル
ScreenTransitionSample.html  サンプル画面のHTMLファイル

<html>
<head>
<title>pirka逆引きサンプル 画面遷移方法</title>
</head>
<body>
<center>
<span style="color: #8080ff">pirka逆引きサンプル 画面遷移方法</span><br>
<hr>
<form name="formItem" method="post">
ボタンで画面遷移<br><br>
<input type="submit" name="submitItem01" value="新規作成した次画面へ">
<input type="submit" name="submitItem02" value="作成済みの次画面へ"><br><br>
</form>
<hr>
<br>
リンクで画面遷移<br><br>
<a name="aItem01" href="">新規作成した次画面へ</a>
<a name="aItem02" href="">作成済みの次画面へ</a>
<br><br>
<hr>
<a name="returnWindow" href="">戻る</a>
</center>
</body>
</html>



ScreenTransitionSample.java  サンプル画面のJavaソースファイル

package jp.oarts.pirka.sample.instruction.is101600;

import jp.oarts.pirka.core.win.PirkaWindow;

/**
* pirka逆引きサンプル 画面遷移方法
*/
public class ScreenTransitionSample extends PirkaWindow {

/** 作成済みの次画面オブジェクト */
private ScreenTransitionNextWindowSample nextWindow;

/**
* コンストラクタ
*/
public ScreenTransitionSample() {
nextWindow = new ScreenTransitionNextWindowSample();
}

/**
* 新規作成した次画面へボタン処理
*/
public PirkaWindow submitItem01() {
return new ScreenTransitionNextWindowSample();
}

/**
* 作成済みの次画面へボタン処理
*/
public PirkaWindow submitItem02() {
nextWindow.updateWindow();
return nextWindow;
}

/**
* 新規作成した次画面へリンク処理
*/
public PirkaWindow aItem01() {
return new ScreenTransitionNextWindowSample();
}

/**
* 作成済みの次画面へリンク処理
*/
public PirkaWindow aItem02() {
nextWindow.updateWindow();
return nextWindow;
}

/**
* 戻るリンク
*
* @return
*/
public PirkaWindow returnWindow() {
return null;
}

}

ScreenTransitionNextWindowSample.html  次画面のHTMLファイル

<html>
<head>
<title>pirka逆引きサンプル 画面遷移方法 次画面</title>
</head>
<body>
<center>
<span style="color: #8080ff">pirka逆引きサンプル 画面遷移方法 次画面</span><br>
<hr>
<H3>
<span name="msg"></span>
</H3>
<br><hr><br>
<form name="formItem" method="post">
<input type="submit" name="returnButton" value="戻る">
</form>
</center>
</body>
</html>

ScreenTransitionNextWindowSample.java  次画面のJavaソースファイル

package jp.oarts.pirka.sample.instruction.is101600;

import jp.oarts.pirka.core.kernel.FieldMap;
import jp.oarts.pirka.core.win.PirkaWindow;

/**
* pirka逆引きサンプル 画面遷移方法 次画面
*/
public class ScreenTransitionNextWindowSample extends PirkaWindow {

/** カウンタ */
private int counter;

/** 作成時間(ms) */
private long createdTime;

/**
* コンストラクタ
*/
public ScreenTransitionNextWindowSample() {
counter = 0;
createdTime = System.currentTimeMillis(); // 作成時間
updateWindow();
}

/**
* 画面の表示内容の更新
*/
public void updateWindow() {

counter++;
long sec = (System.currentTimeMillis() - createdTime) / 1000;
String msg = "この画面は" + sec + "秒前のに作成されました。 " + counter + "回目の表示です。";

FieldMap field = getFieldMap();
field.setValue("msg", msg);
}

/**
* 戻るボタン
*/
public PirkaWindow returnButton() {
return null; // nullを戻すと呼び出しもとの画面に戻ります
}

}

ページのTOPへ このページの先頭へ
oriental arts pirka