VBにて、非アクティブでフォームを表示する方法
長文で大変申し訳ございません。
form1でボタンを押してしばらくするとform2が表示されるようなツールを作っています。
form1のボタンを押した後の「しばらく」というのは1~60分の間でランダムで、
表示されるform2の数も決まっていない状態です。
よって、他の作業をしながらform2が表示されるのを待つということを想定しています。
ですので、いちいちform2が表示されるたびにフォーカスがform2にとられて
作業が中断するのはNGなので、form2は非アクティブ状態で表示したいと考えています。
(メッセンジャーでよくある右下のポップアップのようなイメージです)
が、現在上手くいっておりません。
他で「ShowWindow(Me.Handle, 4)」とやっていたのをみて、showに書いてみましたが、
上手くいきませんでした。
どこでアクティブになるのかみたところ、newの直後で既にforcusedがtrueになっており、
これが原因ではないかと思っております。
以下のサンプルを見てみましたが、これは事前に表示するフォームをnewしており、
同じようにはできないのが現状です。
http://www.codeproject.com/KB/miscctrl/taskbarnotifier.aspx
formをnewする時に非アクティブにする方法はあるのでしょうか。
また代替案等ございましたら、ご教授の程、宜しくお願いいたします。
(VB2010, FW2.0:元々2008で作っていたものであるため)
補足
お答え頂きありがとうございます。実は既にその方法を用いて強引に対処しています。(^^; 小窓がアクティブになる直前はどのウィンドウがアクティブかを記憶しておき、小窓が出た瞬間にそのウィンドウをアクティブにする…といった方法を取っています。 ただこの方法、稀にうまくいかないことがありますし、未確認ですがフルスクリーンのアプリ動作中だと画面が切り替わって鬱陶しいかも知れません。(^^;