日本語データベース「桐」と Microsoft Access

日本語データベース「桐」とMicrosoft Officeとの連携する情報を発信いたします。

桐をオブジェクト指向型でプログラムする。

手続き型とオブジェクト指向型について

プログラムの書き方には、「手続き型」と「オブジェクト指向型」があります。

 

桐の一括処理は「手続き型」プログラムで、MS-DOS時代から作成されてきました。

OSがMS-DOSからWindowsへと移行し、複数の画面が同時に実行されるにつれプログラムの書き方は、「手続き型」から「オブジェクト指向型」へと移行していきました。

 

桐では、「手続き型」でも「オブジェクト指向型」でもプログラムを作成することができますが、ここでは「オブジェクト指向型」について説明いたします。

 

手続き型とオブジェクト指向型のスタートの違い

[手続き型]プログラムは、一括処理ファイルからスタートします。

 

「オブジェクト指向型」プログラムは、フォームファイルからスタートします。

 

下記は、フォームのコマンドボタンを押したときに、メッセージを表示するプログラムです。

「手続き型」と「オブジェクト指向型」に分けて作成していますが、どちらも同じ動きをします。

 

下記のリンクからダウンロードして実行してください。

 

01_手続き型とオブジェクト指向型

 

「手続き型」プログラムの解説

[手続き型]プログラムは、一括処理ファイルからスタートします。

桐ファイルパレットを開いて、一括処理[手続き型メニュー.CMX]を開いてください。

 

一括処理[手続き型メニュー.CMX]の内容は、下記のように記述されています。

 

実行すると、最初に下記の命令が実行されます。

 

フォーム呼び出し "Menu_手続き型",許可作業=*,ボタン=&STR,編集表=しない,終了状態=&実行リターン

 

この命令は、

[Menu_手続き型]フォームを呼び出して、押されたボタンのオブジェクト名を変数(&STR)に保存しなさい。

となっています。

フォームのコマンドボタンの機能には、[閉じる]を設定しています。

 

コマンドボタン[メニュー1]をクリックすると、変数(&STR)にオブジェクト名(btnMenu1)が代入され、フォームが閉じられます。

 

  ケース開始
  ケース (&STR = "btnMenu1")
    メッセージボックス "確認","メニュー1が、クリックされました。",アイコン=i,ボタン指定=1,&実行リターン
  ケース (&STR = "btnMenu2")
    メッセージボックス "確認","メニュー2が、クリックされました。",アイコン=i,ボタン指定=1,&実行リターン
  ケース その他
        繰り返し中止
  ケース終了

 

変数(&STR)の値が、[btnMenu1]なので、下記のコマンドが実行され、メッセージボックスには「メニュー1が、クリックされました。」と表示されます。

 

メッセージボックス "確認","メニュー1が、クリックされました。",アイコン=i,ボタン指定=1,&実行リターン

 

[OK]を押すと、再度[Menu_手続き型]フォームを呼び出し、コマンドボタンが押されるのを待機し、この処理を繰り返します。

 

「オブジェクト指向型」プログラムの解説

「オブジェクト指向型」プログラムは、フォームファイルからスタートします。 

桐ファイルパレットを開いて、フォーム[Menu_オブジェクト指向型.WFX]を開いてください。

 

フォームには[オブジェクト指向型メニュー.kex]が定義されています。

 

コマンドボタン[メニュー1]の[マウス左クリック]イベントに処理が定義されています。


[オブジェクト指向型メニュー.KEV]には、下記のように定義されています。

 

それぞれのオブジェクトごとに、コマンドボタンの[マウス左クリック]イベントにメッセージボックスコマンドが定義され、クリックされたボタンを表示するようになっています。

 

メッセージボックス "確認","メニュー1が、クリックされました。",アイコン=i,ボタン指定=1,&実行リターン

 

 

桐コミュニティに参加しませんか?

質問がございましたら、コミュニティでお問い合わせください。

「桐」コミュニティ(Discord)