C# Graphics对象学习

Graphics对象用于进行绘制;

从哪个对象获取的Graphics,然后进行绘制,就绘制到该对象上;

从位图获取Graphics,然后进行绘制,绘制到该位图上;

从某个控件获取Graphics,然后绘制,绘制到该控件上;

在form上添加5个控件,

cs 复制代码
        private void button2_Click(object sender, EventArgs e)
        {
            Rectangle rect1 = new Rectangle(20, 20, 30, 30);

            Graphics g1 = Graphics.FromHwnd(button1.Handle);
            g1.FillRectangle(Brushes.Green, rect1);

            Graphics g2 = Graphics.FromHwnd(textBox1.Handle);
            g2.FillRectangle(Brushes.Red, rect1);

            Graphics g3 = Graphics.FromHwnd(pictureBox1.Handle);
            g3.FillRectangle(Brushes.Blue, rect1);

            Rectangle rect2 = new Rectangle(10, 10, 30, 30);
            Graphics g4 = Graphics.FromHwnd(comboBox1.Handle);
            g4.FillRectangle(Brushes.Black, rect2);

            Graphics g5 = Graphics.FromHwnd(label1.Handle);
            g5.FillRectangle(Brushes.Black, rect2);

        }

从这5个控件获取Graphics,然后分别绘制一个小矩形;

从控件获取Graphics使用FromHwnd方法,参数是该控件的句柄;

Graphics.FromHwnd(button1.Handle);

相关推荐
我命由我123453 分钟前
Python 开发 - Python 虚拟环境
运维·开发语言·后端·python·http·https·java-ee
c#上位机4 分钟前
C#上位机项目实战——exe项目调试更改dll中源代码
开发语言·c#
basketball6164 分钟前
C++ 中字符串与常见类型的转换总结
开发语言·c++
梦影_5 分钟前
MySQL进阶教程(一)—— 储存过程与触发器(上)
开发语言·数据库·后端·sql·mysql·中间件
一直C13 分钟前
嵌入式 Linux 驱动开发学习笔记:内核定时器、platform 总线与 I²C 驱动
linux·驱动开发·嵌入式硬件·学习·imx6ull
云和数据.ChenGuang17 分钟前
LLM大模型对接本地Ollama部署模型
开发语言·人工智能·python·langchain
等我调个Bug30 分钟前
C++智能指针通俗讲解
开发语言·c++
承渊政道39 分钟前
Linux网络学习【传输层协议UDP】
linux·网络·网络协议·学习·ubuntu·udp
andrsted40 分钟前
练题簿免费刷题小程序:和学习搭子共用一份题库,一起刷题复习
学习·面试·微信小程序·小程序·学习方法·刷题
黑化旺仔1 小时前
【OC】Runtime:类元数据、加载初始化与消息派发
开发语言·macos·ios·objective-c