PictutureBoxの画像について
- 題名: PictutureBoxの画像について
- 著者: ちくちく
- 日時: 2004/05/06 16:23:01
- ID: 3923
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: PictutureBoxの画像について
- 著者: NowhereMan
- 日時: 2004/05/06 18:30:19
- ID: 3925
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: PictutureBoxの画像について
- 著者: ちくちく
- 日時: 2004/05/07 9:14:07
- ID: 3931
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: PictutureBoxの画像について
- 著者: NowhereMan
- 日時: 2004/05/07 11:54:56
- ID: 3933
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: PictutureBoxの画像について
- 著者: NowhereMan
- 日時: 2004/05/07 12:10:14
- ID: 3934
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[5]: PictutureBoxの画像について
- 著者: ちくちく
- 日時: 2004/05/10 9:27:11
- ID: 3963
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
VB.NETのPictureBoxで描画された画像の上に他の画面等がくると消えてしまいます。
過去ログの「http://dobon.net/vb/bbs/log3-3/1380.html#1385」や「http://dobon.net/vb/dotnet/graphics/pictureboximageanddrawimage.html」を見たのですが、私の場合、VB6.0の時に使用していたDLLの内でPictureBoxに描画をしているため、上記のURLのような方法が使えません。
DLLはVC++6.0で作成されており、PictureBoxに描画する関数には、PictureBoxのハンドルと描画サイズを引数で渡しています。
プログラムは簡単に描くと以下の通りです。
'DLLの描画関数
Private Declare Sub DrawBitMap Lib "MapDraw" (ByVal hdc As Integer, ByVal intWidth As Integer, ByVal intHeght As Integer)
'PictutureBoxのハンドル取得API関数
Private Declare Function GetDC Lib "user32" Alias "GetDC" (ByVal hWnd As Integer) As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim hdc As Integer
hdc = GetDC(PictureBox1.Handle.ToInt32) 'PictureBox1のハンドルを取得
Call DrawBitMap (hdc, PictureBox1.Width, PictureBox1.Heght) 'DLLでPictureBoxに描画
End Sub
といった感じです。
DLLの方は変更したくないので何かよい方法がありましたらアドバイスよろしくお願い致します。