DOBON.NETプログラミング掲示板過去ログ
フォームを最背面に表示できない
題名: フォームを最背面に表示できない
著者: ふなー
日時: 2009/02/24 11:25:33
ID: 24096
この記事の返信元:
(なし)
この記事への返信:
(なし)
ツリーを表示
環境/言語:[vb.net2005,windowsinstaller]
分類:[.NET]
いつも参考にさせていただいています。
フォームを最背面に表示するために
Dim hProgramManagerHandle As System.IntPtr = FindWindow(Nothing, "Program Manager")
If Not hProgramManagerHandle.Equals(System.IntPtr.Zero) Then
SetParent(Me.Handle, hProgramManagerHandle)
End If
このコードを使用しています。これ自体はうまく動くのですが
インストーラーを作ってインストールしたのちに1回目に起動すると
フォームが全く表示されないときがあります。
(他のプログラムを開くとその後ろに出てくる)
http://homepage1.nifty.com/MADIA/delphi/delphi_bbs/200604/200604_06040047.html
を見てみると起動時にTopMostにしてやる必要があるとのことだったので
me.topmost = true にしてみたりSetForegroundWindow(Me.Handle)を用いて
見ましたがうまくいきません。
なにか良い方法があるでしょうか?
よろしくお願いいたします。
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[.NET]
いつも参考にさせていただいています。
フォームを最背面に表示するために
Dim hProgramManagerHandle As System.IntPtr = FindWindow(Nothing, "Program Manager")
If Not hProgramManagerHandle.Equals(System.IntPtr.Zero) Then
SetParent(Me.Handle, hProgramManagerHandle)
End If
このコードを使用しています。これ自体はうまく動くのですが
インストーラーを作ってインストールしたのちに1回目に起動すると
フォームが全く表示されないときがあります。
(他のプログラムを開くとその後ろに出てくる)
http://homepage1.nifty.com/MADIA/delphi/delphi_bbs/200604/200604_06040047.html
を見てみると起動時にTopMostにしてやる必要があるとのことだったので
me.topmost = true にしてみたりSetForegroundWindow(Me.Handle)を用いて
見ましたがうまくいきません。
なにか良い方法があるでしょうか?
よろしくお願いいたします。