我的第一篇文章在這裏所以這裏去,DrawtoBitmap不顯示內容面板的
我有一個程序,我需要得到一個像素的顏色的面板,面板包含了IE瀏覽器的代碼所示下面(我不能使用一個網頁瀏覽器,因爲它不加載某些網頁一樣的IE/Firefox的(通常是JAVA))
Dim TheBrowser = New SHDocVw.InternetExplorer
asd = TheBrowser.HWND
fgh = Me.Panel2.Handle
SetParent(asd, fgh)
SendMessage(asd, WM_SYSCOMMAND, SC_MAXIMIZE, 0)
該位工作正常,但用戶可以改變整個窗體不透明度,以便獲得像素顏色我發現,如果我在窗體上使用DrawtoBitmap它忽略不透明度,所以我可以使用它來獲取像素顏色,但drawtobitmap正在離開面板的內容blan K(我用一個PictureBox測試圖像)
Dim mybitmap As New Bitmap(Me.Width, Me.Height)
Me.DrawToBitmap(mybitmap, Me.ClientRectangle)
PictureBox1.BackgroundImage = mybitmap
形式,並且它的所有按鈕等顯示在PictureBox的細但面板是空白(IVE都試圖只小組轉換爲位圖但是這完全是空白)。 我是否將IE連接到Panel不正確,或者它只是DrawtoPanel不能正常工作? (我嘗試使用Printscreen,但正如預期的那樣,它包含不透明度)。 繼承我的Sendmessage和Setparent只是爲了完善。
<DllImport("user32.dll")> _
Private Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
End Function
<DllImport("user32.dll")> _
Public Shared Function SetParent(ByVal HWNDChild As IntPtr, ByVal HWNDNewParent As IntPtr) As IntPtr
End Function
任何幫助將不勝感激,謝謝 瑞安