** c#窗体绘图系列文章**
前言
前文介绍到c#窗体绘图实质上都是在画布上进行工作,本节课原本是要介绍如何创建一个画布以及如何使用,但是转念一想,在这之前,需要先介绍一下picturebox的refresh方法以及paint方法,uu们才能更加理解后续内容,如果有着急的uu不想看这节也可以直接跳过。
refresh方法和paint事件介绍
我们知道在英文中Refresh是刷新的意思,顾名思义。picturebox的refresh方法的作用就是让控件刷新一次,本质上就是让控件上进行一次重绘操作,那么实际上refresh方法进行后会调用重绘事件,也就是paint事件,也就是说由于窗体的refreh方法那么paint事件才会发生,换言之refresh方法是激发,而paint事件是响应。
每个picturebox对象都有一个默认的paint事件,当这个事件响应时会调用picturebox的paint方法进行重绘,但是在实际的操作中我们并不会直接利用这个paint方法,因为这个方法默认是空的,所以我们一般会选择重写paint方法或者自定义一个绘图函数,然后在默认的paint方法中调用该函数。
其实我们我们可以直接在窗体的设计界面找到picturebox的paint事件,首先我们要保证控件处于正常使用状态。
接着我们点击右上方的黄色闪电就可以看到控件的所有事件,例如我们比较常用的双击-doubleclick,单击click等事件,往下滑可以找到paint事件。
我们双击进行事件,修改paint方法的内容,就可以达到自定义绘图的效果。
最后我们介绍一下控件怎么才会进行refresh方法,默认状态下当界面切换到picturebox界面时才会调用refresh方法,但是我们可以手动将下面的代码添加到任何地方
pictureBox pictureBox2=new pictureBox();
pictureBox2.Refresh();
pictureBox2是对象名字,可以自定义
从而实现移动时刷新,进入时刷新,退出时刷新等多种效果。
结尾
创作不易,喜欢的朋友点个赞吧,有问题可以在评论区提出,我会积极回答的,下一节将会正式介绍画布Graphics的创建与使用,欢迎大家继续阅读!