C#画点point

我学习C#第一课,就这一个点我画了快一星期,再接再厉!
 private void button1_Click(object sender, EventArgs e)
        {
            Graphics g = this.CreateGraphics();
            Point point1 = new Point(0, 0);
            point1.X = 100;
            point1.Y = 100;
            g.FillEllipse(Brushes.Black, point1.X, point1.Y, 10, 10);
        }
        public class point1
        {
            public int X { get; set; }
            public int Y { get; set; }
        }

### C# 中绘制点和圆的方法 在C# WinForms 应用程序中,可以通过 `Graphics` 类来绘制图形对象。为了绘制点和圆形,通常会在窗体的 `Paint` 事件处理方法中编写绘图逻辑。 #### 使用 Graphics 绘制单个点 要绘制一个单独的像素点,可以使用 `Graphics.DrawRectangle` 方法并设置矩形大小为1x1: ```csharp private void Form1_Paint(object sender, PaintEventArgs e) { // 创建画笔 Pen pen = new Pen(Color.Black); // 定义位置 (X,Y),这里定义的是左上角坐标 int pointX = 50; int pointY = 50; // 调用 DrawRectangle 来模拟绘制一个点 e.Graphics.DrawRectangle(pen, pointX, pointY, 1, 1); } ``` 这种方法实际上是在指定的位置绘制了一个非常小的正方形[^2]。 #### 使用 Graphics 绘制实心圆 对于绘制填充的圆形,则应该使用 `Graphics.FillEllipse` 方法配合 `SolidBrush` 对象完成: ```csharp private void Form1_Paint(object sender, PaintEventArgs e) { using (SolidBrush brush = new SolidBrush(Color.Red)) { // 圆心位置 float centerX = 100f; float centerY = 100f; // 半径 float radius = 30f; // FillEllipse 参数分别为:刷子、矩形区域(由圆心及半径决定) e.Graphics.FillEllipse(brush, centerX - radius, centerY - radius, // 左上角 X 和 Y 坐标 radius * 2, radius * 2); // 宽度和高度等于直径 } } ``` 上述代码片段展示了如何创建一个红色的实心圆,并将其放置在窗体内特定位置[^3]。 #### 处理鼠标点击事件动态绘制 如果希望响应用户的交互操作(比如鼠标点击),可以在 MouseClick 或其他合适的事件处理器里调用 `Invalidate()` 方法强制重绘窗体,从而触发新的绘画过程: ```csharp private void Form1_MouseClick(object sender, MouseEventArgs e) { this.Invalidate(); // 请求重新绘制整个客户区 } protected override void OnPaint(PaintEventArgs pe) { base.OnPaint(pe); // 这里可以根据需要调整具体的绘图逻辑... } ``` 通过这种方式可以让用户每次点击窗口时都刷新显示的内容[^4]。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

百老

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值