在VB2010中,我尝试更改我的图像适合的 PictureBox 的 SizeMode 。问题是当我将值更改为缩放或 StretchImage 时, SizeMode 无效。由于某种原因,我的图像大小被锁定。
我的代码如下所示:
void frameCallBack(IntPtr lpUserData, ref VCECLB_FrameInfoEx frameInfo)
{
if (frameInfo.dma_status != 0) return;
// fill image
Rectangle rect = new Rectangle(0, 0, image.Width, image.Height);
BitmapData bmdata = image.LockBits(rect, ImageLockMode.ReadWrite, image.PixelFormat);
UInt32 outputBitDepth;
IntPtr stride = new IntPtr(bmdata.Stride);
VCECLB_Error err = NativeFunctions.VCECLB_UnpackRawPixelsEx(ref pRawPixelInfo, frameInfo.lpRawBuffer, bmdata.Scan0, ref stride, VCECLB_Output_Format.VCECLB_EX_FMT_TopDown | VCECLB_Output_Format.VCECLB_EX_FMT_3Channel, out outputBitDepth);
image.UnlockBits(bmdata);
preview.SizeMode = PictureBoxSizeMode.Zoom;
preview.Image = new Bitmap(image);
}
PictureBox中的图像缩小,右侧有大的黑色条纹。它看起来像这样:
相同的图片应如下所示:
问题: 如何自动调整图像大小适合我的PictureBox?
谢谢!