簡體   English   中英

如何通過用戶在C#Windows窗體中選擇四個坐標點來繪制矩形並在文本框中顯示坐標點

[英]how to draw rectangle by selecting four coordinate points by user in C# windows form and display the coordinate points in text box

在我的C#Windows窗體應用程序中,我試圖通過在Windows窗體中通過4個鼠標單擊事件從用戶獲取坐標來繪制一個矩形,每個點一個。

到目前為止,這是我嘗試過的。

private void Form1_Click(object sender, EventArgs e)
{
    using (Graphics g = this.CreateGraphics())
    {
        Pen pen = new Pen(Color.Black, 2);
        Brush brush = new SolidBrush(this.BackColor);
        g.FillRectangle(brush, this.Bounds);  // redraws background
        g.DrawRectangle(pen,textBox1.Text,textBox2.Text,textBox3.Text,textBox4.Text);
        pen.Dispose();
        brush.Dispose();
    }
}    

您的第一個錯誤是繪制Click處理程序。 不要使用CreateGraphics 您所用的任何東西都是易變的,不可能很好地發揮。

您應該做的是收集Click事件觸發時要繪制的Click 為該窗體的Paint事件添加一個處理程序,然后在此處進行繪制。 事件args將提供一個Graphics對象供您使用。

另一種計算矩形的方法可能也很有用,以使該工作不受Paint處理程序的影響。

暫無
暫無

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

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