c#填充矩形MVS 2012

本文关键字:2012 MVS 填充矩形 | 更新日期: 2023-09-27 18:15:05

我是c#编程的初学者,想在windowsform应用程序中绘制一个矩形。我使用Microsoft Visual Studio 2012,得到了这个示例代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }
    private void FillRectangleRectangle(PaintEventArgs e)
    {
        // Create solid brush.
        SolidBrush blueBrush = new SolidBrush(Color.Blue);
        // Create rectangle.
        Rectangle rect = new Rectangle(0, 0, 200, 200);
        // Fill rectangle to screen.
        e.Graphics.FillRectangle(blueBrush, rect);
    }


    }
  }

但是它没有词,有人能帮助我吗?

c#填充矩形MVS 2012

在窗体上添加一个paint事件并插入函数的代码(这是正确的)。它应该看起来像这样:

private void Form1_Paint(object sender, PaintEventArgs e)
{
   SolidBrush blueBrush = new SolidBrush(Color.Blue);
   Rectangle rect = new Rectangle(0, 0, 200, 200);
   e.Graphics.FillRectangle(blueBrush, rect);
}

当你想重新绘制表单时,使用

Invalidate();

应该绘制的代码没有在任何地方被调用。这就是形式的Paint事件的作用。您应该分配该事件,然后在代码中这样做:

private void Form1_Paint(object sender, PaintEventArgs e)
{
    FillRectangleRectangle(e);
}

我认为你需要刷新你想要绘制的对象。试试这些

form.Invalidate();
form.Refresh();