記事「初級から中級まで:オブジェクトイベント(III)」についてのディスカッション

 

新しい記事「初級から中級まで:オブジェクトイベント(III)」はパブリッシュされました:

本記事では、次回の記事で扱う内容の土台を準備します。また、OBJ_LABELオブジェクトを、編集と移動の両方ができる完全にインタラクティブなものにする方法についても見ていきます。つまり、OBJ_LABELオブジェクトのテキストと位置の両方を、オブジェクトのプロパティダイアログを開くことなく変更できるようにします。

前回の記事では、次のアニメーションのような仕組みを実現できることを紹介しました。

アニメーション01

この仕組みにより、OBJ_LABELオブジェクトに表示されているテキストを、チャート上で直接編集できるようになります。しかし、新しいOBJ_LABELを手動で追加してみると、アニメーション01のような編集はおこなえないことが分かります。これはなぜでしょうか。その理由は、イベントを処理する際に使用しているフィルタにあります。最初は、単純にそのフィルタを取り除けば問題は解決するように思えるかもしれません。確かに、最初のうちはその方法でも動作します。しかし実際に試してみると、アプリケーションの動作がおかしくなり始めることに気付くでしょう。

そこで今回は、前回の記事で作成したソースコードをどのように変更すれば、アニメーション01の仕組みを利用して、任意のOBJ_LABELオブジェクトを編集できるようになるのかを簡単にご説明します。


作者: CODE X