- - PR -
ActiveXバーコードコントロールの利用
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-02-27 10:07
このコントロールが生成するイメージをmybImageに取得したい。
1.Delphiで同じ事例があがっていますが、.NetVBでこのバーコード コントロールのウィンドウハンドルが取得出来ない(取得方法が 分からない)。 2.コントロールを含む親ウィンドウのハンドルは取得できているようですが BitBltでコピーできていない。(mybImageの内容が空) 下記でmyBcodeNはOffice付属のバーコードコントロール。 Private mybImage As New Bitmap(110, 28) Dim mygraphics As Graphics = Graphics.FromImage(mybImage) Dim myctlHandle As IntPtr Dim dc1 As IntPtr Dim dc2 As IntPtr 略 myctlHandle = FindWindow(IntPtr.Zero, myBcodeN.Name) dc2 = mygraphics.GetHdc() dc1 = GetWindowDC(myctlHandle) 略 BitBlt(dc2, 0, 0, myBCodeN.Size.Width, myBCodeN.Size.Height, dc1, 0, 0, 13369376) 略 <System.Runtime.InteropServices.DllImport("gdi32.dll")> _ Private Shared Function BitBlt(ByVal hdcDest As IntPtr, _ ByVal nXDest As Integer, ByVal nYDest As Integer, _ ByVal nWidth As Integer, ByVal nHeight As Integer, _ ByVal hdcSrc As IntPtr, _ ByVal nXSrc As Integer, ByVal nYSrc As Integer, _ ByVal dwRop As Integer) As Boolean End Function <System.Runtime.InteropServices.DllImport("user32.dll")> _ Private Shared Function FindWindow(ByVal lpClassName As IntPtr, ByVal lpWindowName As String) As IntPtr End Function <System.Runtime.InteropServices.DllImport("user32.dll")> _ Private Shared Function GetWindowDC(ByVal hwnd As IntPtr) As IntPtr End Function 以上です。よろしくお願いします。 | ||||
|
投稿日時: 2006-02-27 10:37
ならば、子 Window のハンドルを探す FindWindowEx はダメでしたか? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2006-02-27 11:19
FindWindowにしてもFindWindowExにしてもバーコードコントロールのクラス名が
必要だと思います。この指定をどうしたらいいのか分からないのです。 初歩的なことか分かりませんがよろしくお願いします。 |
1