我在一个VB winform app上的一个groupbox控件中有一个picturebox控件我正在VS2010下开发。我使用设计器像往常一样添加MouseClick()事件。在我的代码中,我创建了一个位图:
Dim bmSource As Bitmap = New Bitmap(nWidth, nHeight,System.Drawing.Imaging.PixelFormat.Format32bppPArgb)
(抱歉匈牙利表示法!)然后创建另一个位图,将其渲染到上面的位图中:
Dim bmSprite As New Bitmap(48, 42, System.Drawing.Imaging.PixelFormat.Format32bppPArgb)
Dim g As Graphics = Graphics.FromImage(bmSource)
g.DrawImage(bmSprite, nXPos * 48, nYPos * 42)
并将其分配给picturebox控件:
pbSprites.Image = bmSource
到目前为止,当我启动应用程序时,我看到大型位图中的小位图。问题是当我单击外部较小的位图但仍在另一个位图内时,才会触发MouseClick()事件。 bmSprite大约是bmSource的三分之一。
请注意,bmSource也是一个拖放源,但这似乎不是问题,因为当我删除拖放代码时它仍然不起作用。
谢谢!