手続き型とオブジェクト指向型について
プログラムの書き方には、「手続き型」と「オブジェクト指向型」があります。
桐の一括処理は「手続き型」プログラムで、MS-DOS時代から作成されてきました。
OSがMS-DOSからWindowsへと移行し、複数の画面が同時に実行されるにつれプログラムの書き方は、「手続き型」から「オブジェクト指向型」へと移行していきました。
桐では、「手続き型」でも「オブジェクト指向型」でもプログラムを作成することができますが、ここでは「オブジェクト指向型」について説明いたします。
手続き型とオブジェクト指向型のスタートの違い
[手続き型]プログラムは、一括処理ファイルからスタートします。
「オブジェクト指向型」プログラムは、フォームファイルからスタートします。
下記は、フォームのコマンドボタンを押したときに、メッセージを表示するプログラムです。
「手続き型」と「オブジェクト指向型」に分けて作成していますが、どちらも同じ動きをします。
下記のリンクからダウンロードして実行してください。
「手続き型」プログラムの解説
[手続き型]プログラムは、一括処理ファイルからスタートします。
桐ファイルパレットを開いて、一括処理[手続き型メニュー.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,&実行リターン
桐コミュニティに参加しませんか?
質問がございましたら、コミュニティでお問い合わせください。