From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

LabVIEWのウインドウ制御について

解決済み
解決策を見る

お世話になっております。

LabVIEWからExcelファイルに書き込みを行って、印刷プレビューを行おうとしています。

プレビューそのものは出来ているのですが、LabVIEWのフロントパネル(印刷選択のメニュー画面)がウインドウの前面が

出でてきてしまい、裏側でExcelのプレビューが立ち上がっている状態です。

Excelの印刷プレビュー画面をActiveにする方法をご教授頂けないでしょうか。

よろしくお願い致します。

 

0 件の賞賛
メッセージ1/3
3,773件の閲覧回数
解決策
受理者 S_YN

LabVIEWでウィンドウズのショートカット、ALT+Tab(ウィンドウの切り替え)を行い、
印刷プレビュー画面に切り替えることによりアクティブにする方法はどうでしょうか。

 

ALT+Tab(ウィンドウの切り替え)を行うVIを添付しますのでご確認ください。
このVIはAlt+Tab回数の数値制御機でTabを押す回数を決めることが出来ます。
なので、印刷プレビュー画面に切り替えられる回数を指定して使用してください。

 

VI内のライブラリ関数呼び出しノードでショートカットキーを再現しています。
ライブラリ関数呼び出しノード関数は"user32.dll"ライブラリの"keybd_event"関数を設定し、
1つ目の項目にキーコード(ALT:x12 TAB:x9)、3つ目の項目にキー入力状態(0:INPUT 2:Release)を
指定しています。キーコードは下記リンクを参考にしています。

 

仮想キーコード
http://chokuto.ifdef.jp/urawaza/prm/virtual_key_code.html


もしくはプロパティノードに"現在のVIのパス"のリファレンスを接続して頂き、
フロントパネルウィンドウ>>状態 を選び、Minimizedの値を読みこませることで、
最小化させることが出来ます。


以上、ご確認よろしくお願いします。

メッセージ2/3
3,747件の閲覧回数

matujun1 様

 

お世話になります。

返事が遅くなりまして申し訳ありません。

ご教示頂き有り難うございました。

ご教示頂いたViをプレビューする前に実行して

keyを送ったのですが、タイミングなのか中途半端に表示したりします。

逆にプレビュー実行後だと制御が、LabVIEW側に移らない為、

keyを送れませんでした。

並列化すれば上手く行きそうですが、簡単に変更できそうにない為、

フロントパネルを表示しているViを透明化することで、回避致しました。

 

> もしくはプロパティノードに"現在のVIのパス"のリファレンスを接続して頂き、
> フロントパネルウィンドウ>>状態 を選び、Minimizedの値を読みこませることで、
> 最小化させることが出来ます。

 

上記ご教示頂いた内容が参考になりました。

有り難うございました。

 

 

 

 

0 件の賞賛
メッセージ3/3
3,651件の閲覧回数