VIのフロントパネルのサイズをプログラム的に変更する

更新しました Oct 19, 2023

使用製品

ソフトウェア

  • LabVIEW

問題

現在のVIまたはサブVIのフロントパネルのサイズと位置をプログラム的に変更できるようにしたいです。この機能を実装するにはどうすればよいですか?

解決策

下記のVIスニペットに示すように、VIのサイズをプログラム的に変更するには、プロパティノードを使用します。

 
  1. ブロックダイアグラムにVIリファレンスを開く関数を配置するには、ブロックダイアグラムを右クリックして、関数>>プログラミング>>アプリケーション制御>>VIリファレンスを開く関数を選択します。
  2. 関数>>プログラミング>>ファイルI/O>>ファイル定数>>現在のVIのパスを選択して現在のVIのパス定数を配置し、それをVIリファレンスを開く関数のVIパス入力に配線します。
  3. VIリファレンス出力端子を右クリックし、作成»VIクラスのプロパティノード»フロントパネルウィンドウ»パネルの境界を選択します。
  4. FB.PanelBoundsテキストを右クリックして、書き込みに変更を選択します。
  5. FB.PanelBounds端子を右クリックして、作成>>定数を選択します。
  6. ブロックダイアグラムを右クリックし、関数>>プログラミング>>アプリケーション制御>>リファレンスを閉じる関数を選択して、ブロックダイアグラムにリファレンスを閉じる関数を配置します。
  7. 上記のようにVIを配線します。

追加情報

VIリファレンスを開く関数は、プロパティノードが読み取ることができるVIリファレンスにファイルの場所を変換します。参照しているVI自体を含め、どのVIも参照できます(ただし、選択したVIが開いていない限りプロパティの変更は有効になりません)。フロントパネルのサイズを変更するプロパティはFP.PanelBoundsで、フロントパネルの左上、上端、右端、および下端を設定する4つの整数値クラスタを受け入れます(プライマリモニタの左上からピクセル単位で設定します)。

このVIに基づいて実行プログラムを作成する場合は、VIリファレンスを開くをVIサーバリファレンスに置き換える必要があります。この関数は、単にそのVIが配置されているアプリケーションを参照します。参照するVIがないため、実行ファイルには必要となります。
 

プロパティノードを使用して変更できるその他のVI属性にはいくつかあり、それぞれの詳細はLabVIEWヘルプに記載されています。プロパティノードは動的であることに注意してください。利用可能なプロパティは、どのタイプの参照がそれに配線されているかによって変わります。