LabVIEWでフロントパネルオブジェクトを任意の位置に配置する

更新しました Aug 7, 2023

使用製品

ソフトウェア

  • LabVIEW

問題

Position:LeftプロパティとPosition:Topプロパティを使用して、ダイアログボックスでテキストテーブルをマップしようとしています。画面の中央にテーブルを表示したいです。ただし、0をLeftに、0をTopに配線すると、テーブルは左上隅に配置されますが、フロントパネルの左上隅に正確に配置されるわけではありません。テーブルがダイアログボックスの中央に表示されるようにするにはどうすればよいですか?

解決策

フロントパネルオブジェクトの位置 プロパティはコンピュータ画面上ではなく、フロントパネルウィンドウ上の位置に対応しています。

オブジェクトのPosition:TopプロパティとPosition:Leftプロパティを0に設定すると、通常、フロントパネルウィンドウに表示されている原点の少し上にオブジェクトが配置されます。これはフロントパネルの(0,0)がメニューバーとツールバーの後ろに隠れているためです。オブジェクトを(0,43)に配置すると、オブジェクトが隠れずにユーザが見える箇所を原点とし、オブジェクトを配置します。この設定はダイアログボックス上でVIを実行している間も保持されるため、 (0,43)のオブジェクトは引き続き原点で表示されます。しかし、原点はフロントパネルウィンドウでスクロールバーを使用した場合にも維持されるため、 (0,0)が常に正しい原点であるとは限りません。 FP.Originプロパティを使用して、正しい原点を取得します。

画面の中央にオブジェクトを配置するには、 FP.OriginプロパティとFP.PanelBoundsプロパティを使用してフロントパネルウィンドウの正しい中心を計算し、オブジェクトのPosition:LeftプロパティとPosition:Topプロパティを使用してオブジェクトを配置する必要があります。この方法については、次の例を参照してください。
LabVIEW 7.1以前では、Positionプロパティの詳細については、 LabVIEWユーザマニュアルを参照してください。 LabVIEW 8.0以降では、LabVIEWヘルプのGObjectプロパティのトピックを参照してください。