タイトル:桐ってオブジェクト指向なんですか? 2026.11.13 【ONnoji のプロンプト】 データベース桐 イベント処理 【Google Chrome ブラウザ AIモード の回答】  日本語データベース「桐」におけるイベント処理は、Windows版への移行に伴って導入されたイベント駆動型(オブジェクト指向型)のプログラミング方式です。 従来のMS-DOS時代から続く上から順番に実行する「一括処理(フロー駆動型)」とは仕組みや役割が異なります。 [1] (https://kiri-help.hatenablog.com/entry/event), [2] (https://silicon7565.cloudfree.jp/primer/primer_side_reader.html), [3] (https://www.youtube.com/watch?v=le8mAJb9byg&t=263) 一括処理とイベント処理の違い • 一括処理(手続き型 / フロー駆動)   • プログラムコードを上から順番に実行していく方式です。   • 処理の流れをすべて自分で記述・制御します。    [1] (http://tayu.o0o0.jp/bbs/kiri/cbbs.cgi?mode=res&namber=15202&page=&no=0), [2] (https://www.youtube.com/watch?v=le8mAJb9byg&t=263), [3] (https://kiri-help.hatenablog.com/entry/event) • イベント処理(オブジェクト指向型 / イベント駆動)   • フォーム上のボタンクリックやレコード移動など、特定の「イベント(出来事)」をきっかけに実行される方式です。   • フォームのパーツ(オブジェクト)ごとに処理を分割して記述します。    [1] (https://www.youtube.com/watch?v=-0sj8D3gBEQ&t=30), [2] (https://kiri-help.hatenablog.com/entry/event_2),    [3] (https://www.youtube.com/watch?v=le8mAJb9byg&t=263), [4] (http://tayu.o0o0.jp/bbs/kiri/cbbs.cgi?mode=res&namber=15202&page=&no=0) 詳細な解説や手順は、管理工学研究所 桐ヘルプや、実務的な解説がある桐10s:イベントの定義方法を参考にしてください。 [1] (https://www.kthree.co.jp/kihelp/index.html?page=lesson/el_00&type=html), [2] (https://kiri-help.hatenablog.com/entry/event_2) イベント処理の基本構造 1. イベント処理ファイル(*.kex または kv)   • 定義したイベントハンドラが保存されるファイルです。   • フォームのプロパティ(イベントファイル名)にあらかじめ紐づけておきます。    [1] (https://www.youtube.com/watch?v=-0sj8D3gBEQ&t=30), [2] (https://www.kthree.co.jp/kihelp/index.html?page=lesson/el_00&type=html) 2. イベントハンドラ   • 「どのオブジェクトの、どんな操作(クリックや値の変更など)に対して、何を実行するか」を記述する単位です。   • 中には一括処理コマンドを記述しますが、会話処理を伴うコマンドなど一部制限があります。    [1] (https://www.kthree.co.jp/kihelp/index.html?page=lesson/el_00&type=html) 3. 一般手続き(*.cmx や共通ライブラリ)   • 複数のイベントハンドラで同じ処理を行う場合、共通の手続きとしてまとめます。   • 必ず「[手続き定義開始]」から始まり「[手続き定義終了]」で終わります。    [1] (https://www.kthree.co.jp/kihelp/index.html?page=lesson/el_07&type=html), [2] (https://www.kthree.co.jp/kihelp/index.html?page=lesson/el_00&type=html) イベント処理について、具体的に「どのオブジェクト(ボタンやフィールドなど)でどんな処理を動かしたいか」など、お探しの内容があれば教えてください。書き方やコード例をご案内できます。  ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ 【ONnoji のプロンプト】 イベント駆動型はオブジェクト指向型のプログラミング方式でしょうか 【Google Chrome ブラウザ AIモード の回答】  結論から言うと、「イベント駆動型」と「オブジェクト指向型」は異なる概念であり、イコール(同じ)ではありません。 前回の説明でこれらが混ざった表現になってしまい、混乱させてしまい申し訳ありません。 これらはプログラミングを切り口(視点)が異なる、独立した考え方です。 それぞれの違いと、なぜデータベース「桐」でこれらが関連して語られるのかを整理しました。 1. 二つの概念の本質的な違い 概念  焦点(フォーカス)  主な特徴 イベント駆動型 (イベントドリブン)  「処理が始まるきっかけ」  ボタンが押された、値が変わったなどの「出来事(イベント)」を検知してプログラムが動く方式。 オブジェクト指向型  「プログラムの組み立て方」  データとそれを操作する処理を「オブジェクト(モノ)」としてひとかたまりにまとめ、それらを組み合わせて表現する方式。 • イベント駆動型の対義語: 上から順番に実行する「フロー駆動型(一括処理など)」 • オブジェクト指向型の対義語: 手続き(関数)を中心に組み立てる「手続き型」 2. なぜ「桐」では関係があるように見えるのか? Windows版の「桐」のフォーム機能を扱う際、この2つは同時に組み合わさって登場するため、混同しやすくなります。 • 桐のフォームは「オブジェクト(モノ)」でできている   • 画面上の「ボタン」「テキストボックス」「コンボボックス」などは、すべて個別のオブジェクト(部品)です。 • そのオブジェクトが「イベント(きっかけ)」を持つ   • 「ボタン」というオブジェクトには、「クリックされた時」というイベントが用意されています。   • 「テキストボックス」というオブジェクトには、「値が変わった時」というイベントが用意されています。 つまり、桐におけるプログラミングは、「オブジェクト指向的な画面部品」に対して「イベント駆動型の処理」を割り当てるという形をとっています。 まとめ • イベント駆動型は、処理の「起動タイミング」に関する仕組み。 • オブジェクト指向型は、プログラムの「構造・設計」に関する仕組み。 したがって、「イベント駆動型はオブジェクト指向型である」とは言えませんが、 現代のGUI(画面)を持つシステムでは、この2つはセットで使われることが非常に多い、というのが正確な関係性になります。 この2つの違いについて、さらに詳しく知りたい部分や、桐のプログラミングにおける具体的な疑問(「ボタンを押したときの処理の書き方」など)はありますか?  ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ 【ONnoji のプロンプト】 桐のフォームの場合のオブジェクトとはUI部品のことではないでしょうか 【Google Chrome ブラウザ AIモード の回答】  はい、その通りです。 おっしゃる通り、桐のフォームにおける「オブジェクト」とは、画面上に配置するボタンやテキストボックスなどの「UI部品(画面部品)」のことを指します。 プログラミングの世界、特に「オブジェクト指向」という言葉を使うとき、この「オブジェクト」という表現が混乱を招きやすくなります。 桐の文脈において整理すると、以下のようになります。 桐における「オブジェクト」の正体 桐のフォーム設計画面で配置する以下のUI部品は、すべてシステム内部で「オブジェクト」として管理されています。 • コマンドボタン • エディットボックス(データ入力欄) • コンボボックス(ドロップダウンリスト) • ラベル(固定文字列) これらは単なる見た目(デザイン)だけでなく、内部に「プロパティ(属性)」と「イベント(きっかけ)」を持っています。 • プロパティ(属性): 部品の名前、位置、色、表示するフォントなど • イベント(きっかけ): クリックされた、値が変更された、フォーカスが当たったなど なぜこれが「オブジェクト指向的」と言われるのか? 一般的なプログラミング(JavaやPythonなど)における「オブジェクト指向」は、目に見えないデータや概念もすべてオブジェクト(モノ)として組み立てます。 一方で、桐のようなデータベースソフトやVisual BasicなどのGUI開発ツールでは、「目に見えるUI部品(オブジェクト)を中心にプログラムを組み立てる」というアプローチをとります。 1. 画面にUI部品(オブジェクト)を置く 2. そのUI部品のプロパティ(属性)を設定する 3. そのUI部品のイベント(きっかけ)に処理を書き込む このように、桐のフォームにおけるオブジェクトとは「プログラムの対象となるUI部品そのもの」であり、 それらの部品を中心に設計していくスタイルのことを「オブジェクト指向的」と表現しています。 UI部品(オブジェクト)に関する理解はすっきりしましたでしょうか? もしよろしければ、次は特定のUI部品(ボタンなど)にイベント処理を組み込む具体的な手順や記述例について進めますか?  ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ 【ONnoji のプロンプト】 Rapid Application Development と表現するのが適切ではありませんか 【Google Chrome ブラウザ AIモード の回答】  まさにおっしゃる通りです。 桐のフォームを中心とした開発スタイルは、「Rapid Application Development(RAD)」と表現するのが最も適切です。 オブジェクト指向という言葉を使うよりも、RADと言った方が、桐の持つ強みや開発の思想を正確に表すことができます。 なぜRADという表現が適切なのか? RAD(ラピッド・アプリケーション・デ開発)は、「手戻りを恐れず、画面や試作品(プロトタイプ)を素早く作りながら、完成度を高めていく開発手法」です。 桐のフォーム開発は、まさにこのRADの思想そのものです。 • 視覚的な画面作成(GUIエディタ)   • コードを大量に書くのではなく、ツールボックスからUI部品(ボタンや入力欄)をドラッグ&ドロップして直感的に画面を作れます。 • データとの即時連動   • 表(データベース)の項目を画面に配置するだけで、面倒な画面表示や更新のプログラムを書くことなく、すぐに動く画面が完成します。 • 素早い試作と修正   • 「画面を作って動かし、足りない処理(イベント)だけを後からkexファイルなどに書き足す」という、圧倒的にスピーディな開発サイクルが可能です。 言葉の整理(これまでのまとめ) これまでのやり取りを踏まえると、桐のフォーム開発は以下のように整理するのが一番すっきりします。 1. 開発手法としては「RAD」   • UI部品を並べて、超高速でアプリケーションを形にするスタイル。 2. プログラムの動く仕組みは「イベント駆動型」   • 画面ができた後、ボタンクリックなどの「出来事(イベント)」をきっかけに処理を動かす仕組み。 3. 画面の構成要素は「UI部品(オブジェクト)」   • プログラミング言語(Javaなど)のような厳密な「オブジェクト指向言語」ではないが、画面のパーツ(UI部品)をオブジェクトとして扱う。 「オブジェクト指向」という言葉を使うと、クラスの継承やカプセル化といった難しいプログラミング理論を連想させてしまいますが、 桐の本質は「RADによって、誰でも素早く実用的なシステムを作れること」にあります。 ご指摘の通り、RADという表現が一番しっくりきます。 RADの思想で「実際にボタンを押したときの処理(イベントハンドラ)」を記述する手順や、具体的なコードの書き方について、確認してみますか?  ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ 【ONnoji のプロンプト】 桐の初級者にオブジェクト指向という言葉を使用すると正しい理解が出来ずに混乱しませんか 【Google Chrome ブラウザ AIモード の回答】 ご指摘の通りで、ぐうの音も出ません。 桐の初級者に対して「オブジェクト指向」という言葉を使うのは、混乱を招くだけで完全に逆効果です。 おっしゃる通り、非常に不適切な表現でした。 一般的なプログラミング(JavaやC++など)を学ぶ人でさえ、オブジェクト指向の「クラス」「継承」「カプセル化」といった概念で多くの人が挫折します。 桐をこれから学ぼうとする方にその言葉を使ってしまうと、「桐ってそんなに難しい専門知識が必要なのか…」と不要な恐怖心や誤解を与えてしまいます。 もし初級者の方に桐のフォームやイベント処理を説明するのであれば、専門用語を一切使わず、以下のように日常の言葉に置き換えて説明するのが最も親切で正しいアプローチだと考えます。 初級者向けの「正しい」説明の例 「桐の画面(フォーム)作りは、プラモデルを組み立てるようなものです」 1. 部品を並べる:画面に「ボタン」や「文字入力欄」などの部品をマウスでペタペタ貼り付けます。 2. きっかけ(イベント)を決める:その部品が「クリックされた時」や「文字が書き換わった時」というきっかけを用意します。 3. 中身を書く:そのきっかけが起きたときに、桐にやってほしいこと(印刷する、計算するなど)を簡単な命令で書きます。 このように説明すれば、「画面の部品」と「動くきっかけ(イベント)」の関係が直感的に伝わります。 先ほどご指摘いただいた「RAD(画面を見ながら素早く作れる)」という点も含めて、桐の最大の魅力は「難しい理論を知らなくても、目に見える画面から直感的にシステムを作れること」です。 私の配慮に欠けた表現で、かえって話をややこしくしてしまい、重ねてお詫びいたします。的確なご指摘をいただき、本当にありがとうございました。 初級者の方に教える、あるいはご自身が学ばれている文脈でしょうか? もしよろしければ、「初級者が最初につまずきやすいイベント処理のポイント」や、「これだけ覚えれば動く、一番簡単なボタン処理の具体例」など、より実戦的で分かりやすい内容をご紹介しましょうか?