過去の桐井戸端BBS (桐ver.9)
30260 イベントで使うメゾットって何ですか まえだ 2005/06/16-23:41
桐Ver9をWin2000で使っています。

簡単な一括処理、イベントの使用方法は分かりますが「メゾット」って何でしょう。

いまフォームで、出勤日数、残業時間などを入力するのを使用していますが、
各テキストを入力する際にマウスでクリックするか、f2・訂正を押すか、
スペースバーを押す方法で入力状態にしています。
これをテンキーの「+」で入力状態になれば凄く処理が早くなると思い管理工学に問い合わせましたが、
イベントのキーダウンとメゾットで処理できると解答がありました。

ただ私には理解できません。
優しく教えてくださる方がありましたらご指導下さい。

30263 Re:メソッドですね。 ONnoji 2005/06/17-00:39
記事番号30260へのコメント
まえださん

これはメソッドのことですね。

簡単に説明すると…
フォーム自身やフォームのセクションやセクション上のオブジェクト、
[これらにあらかじめ組み込まれている手続き]の事だと思えばいいと思いますよ。

ですから、オブジェクトの種類によって[メソッド]の種類も違っています。

>これをテンキーの「+」で入力状態になれば凄く処理が早くなると思い管理工
>学に問い合わせましたが、イベントのキーダウンとメゾットで処理できると解
>答がありました。

おそらく、
[フォーム::キーダウン]イベント+[コマンドボタン名.実行( )]メソッド
  または
[フォーム::キーダウン]イベント+[フォーム.更新モード設定( 2 )]メソッド
という意味ではないでしょうか。

<参考>

ご質問のタイトルとピッタリ一致するページは以下です。

コンピュータ活用情報室(出版館)
http://www.ne.jp/asahi/m.sada/kiri/index.html
 ↓
〔桐のQ&A集〕 イベントハンドラ 4例掲載
http://www.ne.jp/asahi/m.sada/kiri/QA/EVENT/EVNT_TOP.html
 ↓
( 1 ) イベント、メソッドって何?
http://www.ne.jp/asahi/m.sada/kiri/QA/EVENT/EVNT_01.html


30264 Re:イベント、メゾットって 宮城 2005/06/17-00:39
記事番号30260へのコメント
まえださん、こんいちは。最初にですが、「メゾット」じゃなくて
「メソッド」です。

>イベントのキーダウンとメゾットで処理できると解
>答がありました。

これも「回答」ですね。まあそういう「国語」の問題はいいとして、
K3も妙な回答をしたものです。

「+」で入力状態って、「+」すら省けますよ。(「入力状態」と
いうのは桐では「訂正モード」といいます。)フォームを開いたとき
訂正モードにするおまじないは次のとおり。

フォームを再定義で開いて何もないところで右クリック→オブジェクト属性

「イベント」のタブ(これがないときは「書式」→「定義画面の設定」→「詳細プロパティを使用する」にチェック。)で
「フォーム開始」をダブルクリック。kev名を聞かれるのでフォームと同じもの入力。

手続き定義開始 フォーム::フォーム開始(長整数 &表番号)
 

手続き定義終了

となるはずですので、この間に入力して次のようにします。

手続き定義開始 フォーム::フォーム開始(長整数 &表番号)
 メソッド呼び出し @フォーム.更新モード設定(2)

手続き定義終了

(フォームは半角カタカナです。)

これで KEVを「表示」にして、フォームを「表示」→「編集へ」
としてやれば・・・。

「メソッド呼び出し」といういささか唐突な日本語は「おまじない発動」ぐらいに読み替えて理解してはいかが? (^^;;


30265 Re:メソッドですね。 ONnoji 2005/06/17-00:53
記事番号30263へのコメント
>おそらく、
>[フォーム::キーダウン]イベント+[コマンドボタン名.実行( )]メソッド

桐のヘルプに[入門]という解説があります。
これをお読みになれば、きっかけが掴めるかと思います。

----------------------------------------
[ヘルプ]メニュー → [トピックの検索]を選び、
[トピックの検索]ダイアログの[目次]タブの、
[一括処理&イベント処理]で[一括処理&イベント処理リファレンス]を開き、
[表示]ボタンを実行します。

以上で、[桐9-2004 一括処理&イベンリファレンス]ウィンドウが開きます。
[目次]タブの、[入門]を開き、

[イベント処理]
 ├[はじめに]
 ├[使ってみましょう]
 └[内容を確認しましょう]

[定義してみましょう]
 ├[定義してみましょう]
 ├  :
 ├  :
 └[一般手続きを定義する]

[ファミリを使用する]
 ├  :
 ├  :
 └[ファミリのイベントを定義する]→■使用例9(btn2.wfm)
----------------------------------------

■使用例9(btn2.wfm)
「使用例8」に加えて、[フォーム]オブジェクトの[キーダウン]イベントにつぎのハンドラを追加すると、
ファンクションキーなどに応じて、[コマンドボタン]の機能を実行させることができます。
[キーダウン]イベントは、キーボード上のキーが押されたときに発生するイベントです。
このハンドラの &仮想キーコードの値から、どのキーが押されたかを調べることができます。
[メソッド呼び出し キー変換]コマンドは、押されたキーの機能を無効にするために、
[メソッド呼び出し 実行]コマンドは、該当するコマンドボタンの機能を実行するために使用しています。


30274 Re:イベント、メゾットって アックン 2005/06/17-15:49
記事番号30260へのコメント
まえださん、こんにちは。
サンプルをアップしました。
+キー(テンキー)で行挿入を開始します。
誤って訂正モードのときに+キー押すと、当然、+と入力されます。(^^;

アックン(=^・^=)
30283 Re:イベント、メゾットって 佐田 守弘 2005/06/19-12:10
記事番号30260へのコメント
まえださん
ONnojiさんが#30263で紹介して下さっている私の記事を見れば、ある程度御理解頂けると思いますが、もう少し補足します。

●メソッドは一括処理のコマンドの1つと考えて下さい。
我々一般ユーザーは、「メソッド呼び出し」コマンドは一括処理の1つだと考えましょう。
それが一番手っ取り早い理解の方法です。

●なぜ「メソッド呼び出し」が登場したのか
桐のオンラインリファレンス「一括処理&イベントリファレンス」を見ると、
「一括処理」と「メソッド」は別の括りになっています。多分、これも
分りにくくなっている要因の1つかと思います。この点を少し補足します。

なぜ別の括りで扱っているのか?
それは、握り寿司と押し寿司が別の扱いになっているのと同じ様なものだと
理解して下さい。銀座(銀座に限らないけど)の寿司屋さんに入って、押し寿司
あるいはいなり寿司を注文しても、「うちでは扱っていません」と言われる
のと同じような違いなのかと考えましょう。
(でも客からすればどちらも「寿司」なのですが)

・一括処理
一括処理コマンドは、表のデータを操作するコマンドです。そのほとんどは
表示状態の表に対して、データを書き換える、入力するといった内容の処理です。
つまり桐のデータベースエンジンに対して、データ処理を指示する命令語です。

・メソッド
メソッド呼び出しで行う操作は、表に対する操作ではなく、入力時のモードの変更や、
フォーカスの移動、表に書き込まれる前のエディタが扱っている文字列の処理といった内容です。
この様な処理は、表データを処理するデータベースエンジンではなくて、
桐のインタフェース部分で行われている処理です。そして会話処理を行うために
桐自身がその様な処理をする「プログラムの一群」を持っています。
このプログラムの一群をC言語の専門用語でメソッドと呼ぶそうです。
(プログラマでない一般ユーザーが知らなくて当然の概念です)
で、そういったインタフェースに関わるプログラムの一群を呼び出して
何かの処理を行わせるので、「メソッド呼び出し」の名前がついたのでしょう。

Windows版の桐から、フォーム上でイベントが使える様になり、そのイベントの中で、
モードの変更やフォーカスの移動などの処理が必要になって来ました。
これらの一括処理コマンド以外のコマンドとして、新たに「メソッド呼び出し」が
登場して来たと理解すると宜しいかと考えます。

佐田守弘(KS-00119)

戻る