3

Bob Powell の LockBits に関するチュートリアルに従って、次のコードを C# 2010 Visual Studio Express に挿入しました。

System.Drawing.Imaging.BitmapData bmp = 
    BitmapImage
        .LockBits(new Rectangle(0, 0, 800, 600),
                  System.Drawing.Imaging.ImageLockMode.ReadWrite, 
                  MainGrid.PixelFormat)

        unsafe
        {
            for (int y = 0; y < bmp.Height; y++)
            {
                byte* row = (byte*)bmp.Scan0 + (y * bmp.Stride);
                for (int x = 0; x < bmp.Width; x++)
                {
                    row[x * 4] = 255;
                }
            }
        }

ビットマップ データをピクチャ ボックス (picturebox.Image = BitmapImage;) にプッシュすると、白い背景の上に赤い枠線の付いた赤い x だけが表示されます。私は何を間違っていますか?

4

1 に答える 1

2

この記事の最後にある「LockBits メソッドを使用して画像データにアクセスするUnlockBits」で提案されているように、最後に呼び出すのを忘れていませんか?

于 2010-11-27T23:28:38.650 に答える