Gewusst wie: Erstellen einer Bitmap zur Laufzeit (Visual C#)
Aktualisiert: November 2007
In diesem Beispiel wird ein Bitmap-Objekt erstellt und dann in einem PictureBox-Steuerelement angezeigt. Erstellen Sie zur Ausführung dieses Beispiels ein Windows Forms-Anwendungsprojekt, und ziehen Sie ein PictureBox-Steuerelement aus der Toolbox in das Formular. Die Größe des Bildfelds wird automatisch an das Bitmapbild angepasst. Fügen Sie die CreateBitmap-Methode in die Form1-Klasse ein, und rufen Sie sie über die Form1_Load-Ereignishandlermethode auf.
Beispiel
void CreateBitmap()
{
const int colWidth = 10;
const int rowHeight = 10;
System.Drawing.Bitmap checks = new System.Drawing.Bitmap(
colWidth * 10, rowHeight * 10);
// The checkerboard consists of 10 rows and 10 columns.
// Each square in the checkerboard is 10 x 10 pixels.
// The nested for loops are used to calculate the position
// of each square on the bitmap surface, and to set the
// pixels to black or white.
// The two outer loops iterate through
// each square in the bitmap surface.
for (int columns = 0; columns < 10; columns++)
{
for (int rows = 0; rows < 10; rows++)
{
// Determine whether the current sqaure
// should be black or white.
Color color;
if (columns % 2 == 0)
color = rows % 2 == 0 ? Color.Black : Color.White;
else
color = rows % 2 == 0 ? Color.White : Color.Black;
// The two inner loops iterate through
// each pixel in an individual square.
for (int j = columns * colWidth; j < (columns * colWidth) + colWidth; j++)
{
for (int k = rows * rowHeight; k < (rows * rowHeight) + rowHeight; k++)
{
// Set the pixel to the correct color.
checks.SetPixel(j, k, color);
}
}
}
}
}
Kompilieren des Codes
Für dieses Beispiel benötigen Sie:
- Einen Verweis auf den System-Namespace
Robuste Programmierung
Die folgenden Bedingungen können eine Ausnahme verursachen:
- Der Versuch, ein Pixel außerhalb der Bitmapgrenzen festzulegen.
Siehe auch
Konzepte
Entwerfen einer Benutzeroberfläche in Visual C#