この記事で扱っていること
- 項目名を選択させて表示を切り替える方法
を紹介しています。
注意:すべてのエラーを確認しているわけではないので、記事の内容を実装する際には自己責任でお願いします。また、エラー配線は適当な部分があるので適宜修正してください。
フロントパネルは一番大きく表示したとしてもウィンドウのサイズ目一杯が限界ですが、フロントパネルそのものは表示されている部分の外側にも制御器なり表示器なり置くことができます。
そのため、垂直、あるいは水平スクロールバーを使用してフロントパネルの上で好みの場所を表示させるといった操作をする場合があります。
しかし、フロントパネルが広いと、例えば確認したい大きな表示器が複数ある時にそれぞれをスクロールバーを動かして行ったり来たりするのは面倒だったりします。
そこで、フロントパネルで表示したい場所の座標はあらかじめ登録しておき、ボタンを押したら瞬時にその場所に飛ぶ、という仕組みを設けて利便性を高めるようにしてみます。
ボタンは常に表示させておくために、フロントパネルにスプリッターバーをつけておきます。
どんな結果になるか
フロントパネルには、例として大きなグラフ表示器が3つあるとします。ただしこれらは一つ一つが大きいので一度にフロントパネルに表示させることはできない状態だとします。
そこに、スプリッターバーで左側に新たな枠を作っておき、ここにボタンを用意します。
ボタンを押すと、各表示器の場所へ瞬時に移動できます。
例えば下の図では最初TestAのグラフが表示されていますが、左側のTestBというボタンを押すことで、TestBの表示器に切り替えることができます。(垂直スクロールバーの位置が変わっているのがわかると思います)
プログラムの構造
まず、スプリッターバーは、制御器パレットの一部のスタイルでのみ使用することができます。
水平スプリッタバーにするか垂直スプリッタバーにするかは好みで選んでください。
フロントパネルを分割したら、表示したいものを左側の大きな領域の方に配置していきます。今回の例ではグラフ表示器を3つ、垂直方向に置いていますが、もちろん置き方は自由です。
あとは、ブロックダイアグラム上でジャンプ機能を設けさせます。このときジャンプさせるためのボタンは、別記事で紹介したハイパーリンクテキストの実装の仕方をほぼそのまま使用しています。
なお、指定する座標は頑張って調べないといけません。まぁここに関してはうまい位置を見つけるために少し座標定数を変えては実行して位置を調整するといった操作を繰り返すだけなのでそこまで難しいことではないと思います。
ショートカットキーで表示位置を変える
表示位置を変えるために、上で紹介した方法はそれぞれの表示位置に対応させたボタンを押しました。
別の方法で表示位置を変えるアイデアとしては、ショートカットキーを登録する方法が考えられます。
そのためにはメニューバーを編集する必要がありますが、その基本的な方法は以下の記事で紹介しています。
今回の場合、カスタムメニューとしては例えば以下のようなランタイムメニュー編集を行っておきます。
このカスタムランタイムメニューに対して、例えば以下のようなプログラムとすることで、ショートカットキーを押して表示位置を切り替えるといったことができるようになります。
これで、プログラム実行時に上部のメニューバーから選択したり、あるいはキーボードのショートカットによって表示を切り替えることができるようになります。
本記事では、項目名を選択させて表示器を切り替える方法を紹介しました。
何かしらの理由で画面いっぱいに結果を表示させる必要があるような表示器が複数ある時に、これらを簡単に切り替える方法としては役に立つかと思うので参考になればうれしいです。
ここまで読んでいただきありがとうございました。
コメント