したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

はじめまして。

33oec:2020/07/25(土) 17:51:30
初めまして。昨年末から、管理人さんのサイトを参考にちまちまVST3プラグイン開発を進めています。

bundleのResourcesからWAVファイルを読み出すのもダメじゃないけどやっぱりリソースがひとつのバイナリに
収まってる方がいいな!と思ってWin32のリソースアクセスを使う方法を見つけたり、
ノブがアニメ表示してるんならLEDとかアニメ表示で表現できるはずだ、クラス作らないといかんのか?と
ライブラリ探しまくってCMovieBitmapクラスを発見したりと、苦労しながらも少しずつ形が出来上がりつつあります。

今回はCKickButtonクラスの話です。
サイトの説明だと、ボタンを押していると1が、離すと0がイベントの値として得られるとのことでしたが、
試してみるとボタンを離した時にしかイベントが発生しません。標準のGUI画面だと、ノブを動かせば
どちらの動作でもイベントは発生するようですが期待した動作ではありません。

そこで、CKickButtonクラスを継承した独自クラスを作り、そこにonMouseMovedだけをオーバーライドして、
元のonMouseMovedメソッドのソースをコピーした後、値が変わったことを示す関数(valueChanged())を
実行するように追記しました。

if (where.x >= getViewSize().left && where.y >= getViewSize().top &&
where.x <= getViewSize().right && where.y <= getViewSize().bottom)
value = getMax();
else
value = getMin();
valueChanged();

マウスの動きによって値を変えようとしているのだから、変化を通知してないのはバグかな…?
ライブラリのバージョンは現時点で最新の3.6.14です。

キックボタンなのでキックされたらイベント発生という意味だとすれば納得できなくもありませんが…
この変更でボタンを押している間ノートオン、離すとノートオフという操作が可能になります。

以上、ご参考まで。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板