簡體   English   中英

如何在表單啟動時將圖形繪制到表單

[英]How to draw graphics to a form upon form startup

我試圖在表單啟動時在表單上繪制圖形。 我已經嘗試將圖形組件放在表單構造函數中,但我似乎無法使它工作。 這就是我到目前為止所擁有的。

public partial class Form3 : Form
{
    public Form3()
    {
        System.Drawing.Graphics graphics = this.CreateGraphics();
        System.Drawing.Rectangle rectangle = new System.Drawing.Rectangle(100, 100, 200, 200);
        graphics.DrawEllipse(System.Drawing.Pens.Black, rectangle);
        graphics.DrawRectangle(System.Drawing.Pens.Red, rectangle);
    }

}

任何和所有的幫助都會很棒,

多謝你們

一種解決方案是使用位圖,例如

Bitmap b = new Bitmap(this.Width, this.Height);
Graphics g = Graphics.FromImage(b);
... // Draw
this.BackgroundImage = b;

否則,您將需要處理Paint事件,您可以在每次表單無效時直接繪制到圖形上下文。 例如

this.Paint += Form1_Paint;

...

private void Form1_Paint(object sender, PaintEventArgs e)
{
    Graphics g = e.Graphics;
    System.Drawing.Rectangle rectangle = new System.Drawing.Rectangle(100, 100, 200, 200);
    g.DrawEllipse(System.Drawing.Pens.Black, rectangle);
    g.DrawRectangle(System.Drawing.Pens.Red, rectangle);
}
private void Form1_Paint(object sender, PaintEventArgs e)
        {
            System.Drawing.Rectangle rectangle = new System.Drawing.Rectangle(100, 100, 200, 200);
            e.Graphics.DrawEllipse(System.Drawing.Pens.Black, rectangle);
            e.Graphics.DrawRectangle(System.Drawing.Pens.Red, rectangle);
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM