桐ver8イベントで鍵盤楽器 しのひろさんのリクエストにお応えして、鍵盤楽器を試作 してみました。 使っているイベントは「マウス左ダウン」と「マウス左ア ップ」だけです。鍵盤を押す(ダウンする)と引っ込んで その音を出し、離す(アップする)と元に戻ります。 テキトーに弾いて遊んで下さい。桐ver8では、こんなこと までは出来るようになったんですね。(^^) "鍵楽器01.*"と"鍵楽器02.*"の2種類を同梱しています。 これは「オブジェクトファミリー」の使い方の学習と云う 意図を込めて、敢えてそのようにしてみました。※ まず "鍵楽器01.*"の方ですが、これは wfm・kev とも、フ ァミリーを使っていません。wfmでは各鍵盤オブジェクトに それぞれイベントを設定してあります。そのため、kevでは 類似のイベント手続きが沢山書かれているはずです。何か 効率が悪いような気がしますでしょ? 次、"鍵楽器02.*"の方。こちらではこれらの扱いを「オブ ジェクトファミリー」を使って簡素化・効率化しています。 wfmでは「ファミリー」に「鍵盤」なるものを新設してい ます。そして、各鍵盤のイベントタブの「ファミリ名(F)」 にそれを指定します。こうすると、その左「イベント(E)」 でのチェックは不要になります(あれば外す)。 その上で、「ファミリー」のオブジェクト属性で、上記ふ たつのマウスイベントを設定します(チェックを付ける)。 こうすると、kevの記述は、「01」の方と比較すると一目瞭 然、激減しておりますでしょ。(^^)v ※補足しますと、 私(悲しげ)がこれを作るに際して、ファミリーの使い方が どうしてもうまく行かなくて、結局はIkaspaghetti氏の手を 入れていただきました。これを皆様に還元しようと思ったの が1点。 もうひとつ、まず試作初期にしのひろさんに「01」の方を送 り、後で「02」の修正版方を送ったため、彼はそのふたつを 比較すること(特にkevの記述の激減)でもって「オブジェク トファミリー」の使い方が、驚きを伴って(^^;)理解できたと のことであります。と云うことは、敢えてふたつあった方が 学習素材としてはいいかも、と思ったからです。 「02」の方では少し遊んでおりまして、「壊れて出ない音が ある……」の吹き出しを出しています(単に各音階用のwav が足りないがための手抜きと云う説もあるが)。(^^;) あと、cmdの方は附録です。 一応は自動演奏ふうにしてみましたが、各音の長さを「遅延」 コマンドで調節しているだけです。イベントでは何故かこの コマンドをサポートしていないからです。「タイマー」イベ ントとぶつかるからなんでしょうか。(?_?) したがって、これは古典一括すなわちcmdで(桐ver7的)作っ ただけのことで、新鮮味は無いかもしれません。ただ、表の データを使って演奏させるってのは、結構ラクチンかも。(^^)v (音が引っ掛かるようでしたら、「表表示」を止めてみたら 幾分速くなるかもしれません) そうそう、cmdを付けた意図はもうひとつありました。 これって      cmd → kev(wfm) → cmd の例のつもりです。少なくともこのように使うことはできる ようです。この逆、すなわち      kev(wfm) → cmd が可能なのか不可能なのかは未だに判りません。 ps: 各音階用のwavは、しろひろが作成しました。 (使用ソフト「Waving ver.1.18」 by Satoshi Akimichi) ちょっとデカイことと、音程が各半音くらいづつずれている ことはご愛嬌(^^;)ってことで、ご容赦願います。 それと、"pk.wav"と"休符.wav"だけは悲しげが作成しました。 (使用ソフト「Swave ver.1.05」 by Shou/河合章悟)    Copyright 1999/07/16 (主に)悲しげ               (少し)しのひろ               (一寸だけ)Ikaspaghetti ///////////////// 追記(1999/07/18) /////////////////// その後、幅田さんから、キーボード(パソコンの)対応のリク エストがありましたので、暫定対応してみました。 各鍵盤とパソコンのキーの対応関係は、カスタマイズ可能なよ うに別表(キーwav.tbl)方式にしてあります。 そのため「フォーム開始」と「フォーム終了」イベントでこの 表を開閉させています。 wfmには、その他に「キーダウン」と「キーアップ」イベントを 追加しています。鍵盤キーの「くぼみ」・音再生や「立体」化 はこのイベントで行っています。 なお、キーを押下し続けた際の音の出方が未解決です。(;_;) もう1点、しろひろから各音階用のwavの修正が入りまして、 ファイルサイズを半減しました。音程はまだちょ〜っとずれて ますけど。(^^;)