请问如何改变C#的winform的panel的指定区域的背景颜色

比如我现在有一个100*100大小的panel,背景是白色,我随意指定四个坐标,就能通过代码把这四个坐标围成的矩形区域的背景颜色改为红色。求代码... 比如我现在有一个100*100大小的panel,背景是白色,我随意指定四个坐标,就能通过代码把这四个坐标围成的矩形区域的背景颜色改为红色。求代码 展开
 我来答
yaobing0687
2011-03-07 · TA获得超过988个赞
知道小有建树答主
回答量:1309
采纳率:0%
帮助的人:900万
展开全部

private void button1_Click(object sender, EventArgs e)

        {

            Graphics g = panel1.CreateGraphics();

            Point p1 = new Point(int.Parse(textBox1.Text),int.Parse(textBox5.Text));

            Point p2 = new Point(int.Parse(textBox2.Text), int.Parse(textBox6.Text));

            Point p3 = new Point(int.Parse(textBox3.Text), int.Parse(textBox7.Text));

            Point p4 = new Point(int.Parse(textBox4.Text), int.Parse(textBox8.Text));

            Point[] ps = new Point[4] { p1, p2, p3, p4 };

            Brush b = Brushes.Red;

            g.FillClosedCurve(b,ps);//可以换其他的东西来改变效果

        }

手机用户62383
2011-03-07 · TA获得超过482个赞
知道答主
回答量:241
采纳率:0%
帮助的人:201万
展开全部
nt,

不过form里的透明都是"假透明"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
剑舞心伤
2011-03-07 · TA获得超过238个赞
知道小有建树答主
回答量:205
采纳率:0%
帮助的人:149万
展开全部
private void panel1_Paint(object sender, PaintEventArgs e)
{
Graphics gp = panel1.CreateGraphics();
Rectangle rect = new Rectangle(new Point(1, 1), new Size(100, 50));
//gp.DrawRectangle(new Pen(Brushes.Red, 5f), rect); //线
gp.FillRectangle(Brushes.Red, rect); //填充
gp.Flush();
}

测试通过。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式