Tutorials and Guide to Samples (v11)

レッスン 2:更新用フォームを作成する(ActiveX を使用する Visual Basic チュートリアル)

このセクションでは、プロジェクトへのフォーム追加方法を説明します。このフォームは、Student Browser で情報の更新、生徒の補足情報の表示、生徒レコードの削除を行うために使用します。このフォームでは、複数の Pervasive PSQL ActiveX テキスト ボタン、オプション ボタン、コマンド ボタンを使用します。

このレッスン終了後には、以下の操作が可能になります。

フォームの追加と表示

プロジェクトにフォームを追加するには

  1. [プロジェクト]メニューの[フォーム モジュールの追加]をクリックします。[開く]をクリックします
    Visual Basic では、プロジェクトに 3 つ目のフォームが追加されます。
  2. フォームの Name プロパティを "frmStudentUpdate" に、Caption プロパティを "Update Student Information" に変更します。
    Update Student Data]ボタンを押すと、frmStudentBrowser フォームに frmStudentUpdate フォームが表示されます。特定の生徒 ID を選択して[Update Student Data]ボタンをクリックした場合は、その生徒の詳細がフォームに表示されます。
  3. frmStudentBrowser フォームに切り換え、[Update Student Data]ボタンをダブルクリックしてコード ウィンドウにそのコードを表示します。
  4. [Update Student Data]ボタンの Click イベントに以下のコードを入力します。
    frmStudentUpdate.Show
    frmVAccessForm.VAccess1.Refresh
    最初の行ではフォームが表示され、次の行で VAccess1(VAccess コントロール)にバインドされたすべてのコントロールのデータを更新する Refresh メソッドが呼び出されます。ここで Refresh メソッドが使用されない場合、frmStudentUpdate フォームに配置したコントロールは、フォームが表示された際に空白になります。Refresh メソッドは、VAccess コントロールのデータ バッファーに応じてこれらのコントロールのデータを更新し、フォーム表示の際にデータが表示されます。

複数のテキスト ボックスを配置する

VAText ボックス を追加するには

  1. 8 つの VAText ボックスを frmStudentUpdate フォームに追加して縦の行に配置します。



  2. プロパティ ウィンドウから、各テキスト ボックスの VAccessName プロパティを "VAccess1" に設定します。
  3. 各 VAText ボックスの VAFieldName プロパティを、以下の順番でいずれかの名前に設定します。

コマンド ボタンを追加する

コマンド ボタンを追加するには

  1. 3 つの VACommandButtons ボタンを frmStudentUpdate フォームに配置して、各 Name プロパティには "Insert"、"Update"、"Delete" を、各 Caption プロパティには "cmdInsert"、"cmdUpdate"、"cmdDelete" を設定します。



  2. すべてのボタンの VAccessName プロパティを "VAccess1" に設定します。ほかのコントロールと同様に、このプロパティを設定することにより、コントロールと VAccess コントロールがバインドされます。
  3. [Insert]ボタンの VAOperation プロパティを "2-Insert" に、[Update]ボタンの VAOperation プロパティを "3-Update" に、[Delete]ボタンの VAOperation プロパティを "4-Delete" に設定します。
    VAOperation プロパティは、ボタンのクリック時に実行される Pervasive PSQL の処理を VACommandButton に割り当てるためのものです。この処理は、Click イベントの任意コードの後に実行されます。
    以上で、新規生徒レコードのデータベースへの追加、既存レコードの変更、レコードの削除を行う各ボタンが、フォームに追加されました。

    メモ

    多くのフィールドは、両方のフォームとも同様ですが、互いに独自のフィールドがあります。共通のフィールドは、ユーザーによる更新が可能なものです。


    必要に応じて、Visual Basic Label コントロールを使用してフォームの VAText ボックスを識別し、フォーム上のコントロールを整頓します。フォームは以下の図のようになります。
図 11 生徒情報更新フォームの完成版

アプリケーションのテスト

このレッスンで追加した機能をテストするには

  1. 保存後、アプリケーションを実行します。
  2. frmStudentBrowser フォームのレコードをスクロールし、[Update Student Data]ボタンをクリックします。
    Update Student Information]フォームが開き、リストで選択した生徒に関するフィールドが表示されます。[Student Browser]ウィンドウのリストをスクロールすると、両方のフォームに表示されているデータが同期します。
  3. Update Student Information]フォームの VAText ボックスに新しいデータを入力し、[Insert]、[Update]、[Delete]をクリックしてそれぞれの操作をレコードに対して行います。

レッスン 1:データ ブラウザーを作成する  (ActiveX を使用する Visual Basic チュートリアル)

レッスン 3:2 つのテーブルからのレコードを結合する(ActiveX を使用する Visual Basic チュートリアル)