NS Basic/Palm チュートリアル #2:

複数のフォームを持つプログラム


© NSB Corporation. All rights reserved.

目的

このチュートリアルの目的は、チュートリアル #1 からさらに突っ込んだNS Basic/Palmプログラミングのテクニックを習うことです。この練習を始める前にチュートリアル #1 を終わらせると良いでしょう。この練習では複数のフォームを扱うテクニックを習います。

プログラムの説明

ここで作るプログラムは2つのフォームを持っています。Form#1はユーザが誕生日と名前の入力を行う為のものです。Form#2は、Form#1で入力した誕生日と名前を表示し、さらに実際の出産日が何曜日であったかを表示します。

プログラムの開発

1. 起動

2. プロジェクト・プロパティの変更

3. 最初のフォームのプロパティを変更

4. フォーム1のオブジェクトを構築

誕生日入力用にDate Selectorを追加する。

名前入力用にフィールドを追加する。

フォーム2に移動する為のボタンを追加する。

5. 2つ目のフォームを作成

6. フォーム2のオブジェクトを構築

誕生日の表示ラベルを追加する。

誕生日を表示するフィールドを追加する。

名前の表示ラベルを追加する。

名前を表示するフィールドを追加する。

曜日の表示ラベルを追加する。

曜日を表示するフィールドを追加する。

フォーム1に戻る為のボタンを追加する。

7. プログラムのStartupコードを入力

	Global MyName as String
	Global MyDate as date
	MyDate=ToDate("1999/01/01") 

このコードの目的は、

  1. MyNameとMyDateをグローバル変数にすることにより、これらの値はプログラム内のどこのセクションからでもアクセスが可能になる。
  2. MyDateに日付値を与える。MyDateはDateポップアップコマンドで使用されるので、有効な日付値が必要になる。ユーザが自分の誕生日を入力することにより、この日付けは上書きされる。

特にこれ以上のアクションは必要なく、プログラムの起動時に、NS Basic/Palmは自動的に最初のフォームを表示する。

Project Explorerは、プロジェクト名の横に"(Startup)"を表示して、Startupコードが与えられたことを示す。

8. フォーム1のオブジェクト用にコードを入力

日付け入力用ポップアップを引き起こす為のコード:

ユーザがフォーム1上の誕生日(birthday)Selectorをタップした時、Palmデバイスの標準Date Selectorポップアップが開くようにするため、フォーム1上のSelectorオブジェクトにコードを与えてこれをさせる。

このコードは以下のことを行う。

9. フォーム2へ移動する為のコード

ユーザが「曜日を表示」ボタンをタップした時、フォーム2が現れるようにする。

	MyName= fldName.text
	NextForm "My Form 2" 

このコードは以下のことを行う。

10. フォーム2のオブジェクト用にコードを入力

フォームが描画された後に実行されるコード(form after code)

	fldName2.text=MyName
	fldDate2.text=dateMMDDYY(MyDate)
	fldDayNumber.text=str(DayOfWeek(MyDate)) 

このコードは、Palmデバイスがフォームを表示する前に、全てのフィールドに値を入れる。

11. フォーム1に戻るための"Go Back"ボタンのコード

	NextForm "My Form 1" 

このボタンがタップされると、フォーム1が再度現れ、ユーザは別の日付けを試すことができる。

プロジェクトはc:\NSBasic\ MyProject.prjとして保存する。 全てのフォーム定義、フォームオブジェクト、コード、および他のプロジェクト情報は1つのプロジェクトファイルに保存される。

12. ダウンロード可能なPalm Device Fileを作る

もしエラーが存在する時、エラーメッセージとコードウインドウが現れ、エラーの箇所がハイライトされる。エラーは全て取り除く必要があり、エラーがなくなるまで、「コンパイル」と修正を繰り返す。 エラーがないとメッセージが現れてアプリケーションのサイズが表示される。

エラーを直した場合は、再度プロジェクトを保存する。

 コンパイルが成功すると、以下に示すディレクトリとファイル名を持つ、ダウンロード可能なファイルが作成される。

	c:\NSBasic\Download\myProject.prc 

設定によってPOSEにダウンロードされるか、デバイスへのHotSyncが準備される。

これでNS Basic/Palmプログラムの完成です!

プロジェクトのテスト

   

POSEシミュレータを使ってテスト

POSEシミュレータの環境を予め整えなくてはなりません。ReadMeファイルを参照して下さい。

Palmデバイスを使ってテスト