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);

相关推荐
糕......3 分钟前
Java异常处理完全指南:从概念到自定义异常
java·开发语言·网络·学习
御水流红叶3 分钟前
第七届金盾杯(第一次比赛)wp
开发语言·python
Lhan.zzZ4 分钟前
Qt跨线程网络通信:QSocketNotifier警告及解决
开发语言·c++·qt
superman超哥5 分钟前
仓颉性能优化秘籍:内联函数的优化策略与深度实践
开发语言·后端·性能优化·内联函数·仓颉编程语言·仓颉·仓颉语言
wangnaisheng5 分钟前
【C#】RocketMQ、Redis的使用
c#
Wang's Blog6 分钟前
Lua: 元表机制实现运算符重载与自定义数据类型
开发语言·lua
好奇龙猫6 分钟前
【人工智能学习-AI-MIT公开课-第5. 搜索:最优、分支限界、A**】
人工智能·学习
我找到地球的支点啦7 分钟前
Matlab系列(006) 一利用matlab保存txt文件和读取txt文件
开发语言·算法·matlab
-森屿安年-12 分钟前
STL中 Map 和 Set 的模拟实现
开发语言·c++
阿蒙Amon12 分钟前
C#每日面试题-接口和抽象类的区别
开发语言·c#