Invalidate介绍[通俗易懂]
1、Invalidate介绍 void Invalidate( BOOL bErase = TRUE ); 该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘,例如,如果一个被其它窗口遮住的窗口变成了前台窗口,那么原来被遮住的部分就是无效的,需要重绘。这时Windows会在应用程序的消息队列中放置WM_PAINT消息。MFC为窗口类提供了WM_PAINT的消息处理函数OnPaint,OnPaint负责重绘窗口。视图类有一些例外,在视图类的OnPaint函数中调用了OnDraw函数,实际的重绘工作由OnDraw来完成。参数bErase为TRUE时,重绘区域内的背景将被擦除,否则,背景将保持不变。2、与UpdateWindow( )的区别 UpdateWindow( )的作用是使窗口立即重绘。调用Invalidate等函数后窗口不会立即重绘,这是由于WM_PAINT消息的优先级很低,它需要等消息队列中的其它消息发送完后才能被处理。调用UpdateWindow函数可使WM_PAINT被直接发送到目标窗口,从而导致窗口立即重绘。Delphi中的代码procedure TWinControl.Invalidate;begin Perform(CM_INVALIDATE, 0, 0);end;这个方法会使窗口重绘。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/234926.html原文链接:https://javaforall.cn
相关文章
- linux系统带界面,linux系统界面详情介绍[通俗易懂]
- EMD算法的简单介绍,matlab安装包的安装以及其应用![通俗易懂]
- java项目介绍_java项目介绍及创建[通俗易懂]
- 图片循环滚动代码详细介绍[通俗易懂]
- java 工厂模式例子_java 工厂模式简单介绍及例子[通俗易懂]
- UML时序图(Squence diagram)的设计介绍[通俗易懂]
- FPN网络和RPN网络介绍[通俗易懂]
- EJB的简单介绍和使用[通俗易懂]
- jinfo介绍[通俗易懂]
- clientWidth、offsetWidth等介绍[通俗易懂]
- 【说站】js中UMD规范的介绍
- scrapy安装教程_玻璃幕墙安装介绍
- gg修改器修改数值没有用怎么办_gg修改器怎么用怎么修改数值 修改数值方法介绍…[通俗易懂]
- CSS边框圆角介绍及案例
- Activiti工作流的详细介绍[通俗易懂]
- Linux系统介绍及熟悉Linux基础操作
- Java-Servlet介绍
- 【大数据】RAID介绍
- Struts2拦截器介绍详解编程语言
- MySQL全拼介绍:MySQL数据库管理系统的全拼名称是什么?(mysql全拼)
- raid管理Linux系统Raid磁盘阵列:MDADM工具介绍(linuxmdadm)
- MySQL数据库文件的.frm后缀介绍(mysql数据库文件后缀)
- 「MySQL大全」——全面介绍MySQL的使用方法和命令(mysql大全)
- PHP操作数组的一些函数整理介绍
- javascript正则表达式相关应介绍
- MySQL运行状况查询方式介绍
- JavaScript设计模式之原型模式(Object.create与prototype)介绍