C#在Panel上画图

所有控件(Control类的派生类)都有CreateGraphics方法提供画板,所以你可以:
//假设panel1是将直线盖住的控件
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.Clear(BackColor);panel1.CreateGraphics().Clear(panel1.BackColor);
e.Graphics.DrawLine(Pens.Black, new Point(0, 0), new Point(ClientRectangle.Width, ClientRectangle.Height));
//注意坐标系变换。
panel1.CreateGraphics().DrawLine(Pens.Black, new Point(-panel1.Left, -panel1.Top), new Point(ClientRectangle.Width - panel1.Left, ClientRectangle.Height - panel1.Top));
}
private void Form1_SizeChanged(object sender, EventArgs e)
{
Form1_Paint(this, new PaintEventArgs(CreateGraphics(), ClientRectangle));
}

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 可以使用C#中的Graphics类,在PictureBox控件上绘制图形。具体步骤如下: 1. 在PictureBox控件的Paint事件中获取Graphics对象: private void pictureBox1_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; } 2. 使用Graphics对象的各种绘图方法绘制图形,例如绘制直线: g.DrawLine(Pens.Black, , , 100, 100); 3. 在需要更新PictureBox控件时,调用其Invalidate方法触发Paint事件重新绘制图形: pictureBox1.Invalidate(); 完整的示例代码如下: private void pictureBox1_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; g.DrawLine(Pens.Black, , , 100, 100); } private void button1_Click(object sender, EventArgs e) { pictureBox1.Invalidate(); } ### 回答2: 对不起,无法回答没有上下文或足够信息的简短问题“c”是什么。请提供更多信息以便我可以帮您回答问题。 ### 回答3: C是一种流行的编程语言,也是最初由贝尔实验室的丹尼斯·里奇和肯·汤普森开发出来的语言。它有许多特点,包括易于学习、可移植性和高效性等。C语言的设计使它成为编写系统软件和应用程序的理想选择,从操作系统到浏览器,从数据库到游戏,C语言贡献卓著。 C语言的编写有许多的好处。首先,它能够快速地编写程序,这是由于它的语法简单,易于读写。其次,C语言可以跨平台,能够在任何计算机上运行,包括Windows、Linux、Unix等。另外,C语言支持能够直接访问硬件的低级操作,这对于性能和速度非常重要。 尽管C语言拥有如此多的优点,但它也有一些缺点。比如,C语言需要程序员负责管理内存分配,这就容易导致内存泄露和内存溢出等问题。此外,C语言的开发速度通常会比其他语言慢,因为程序员需要编写非常详细的代码。 总的来说,C语言是一门非常重要的编程语言。它在许多领域中广泛应用,包括操作系统、数据库、游戏、网络和应用程序等。尽管它有一些缺点,但其优点远远超过了缺点,使得它在程序员和软件开发者中仍然非常流行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

xiongxianhe

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

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

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

打赏作者

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

抵扣说明:

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

余额充值