[发明专利]一种Windows应用程序多窗口并行绘图的方法及系统有效
申请号: | 201710519798.4 | 申请日: | 2017-06-30 |
公开(公告)号: | CN107357576B | 公开(公告)日: | 2020-07-28 |
发明(设计)人: | 程时宋;陈秋龙;黄东豹;张琳 | 申请(专利权)人: | 惠州市德赛西威汽车电子股份有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451;G06F3/0488 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 温旭 |
地址: | 516006 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 windows 应用程序 窗口 并行 绘图 方法 系统 | ||
本发明公开了一种Windows应用程序多窗口并行绘图的方法,包括:创建主窗口及其所属的多个子窗口,为主窗口和子窗口创建全局静态内存空间和全局静态内存位图;调用OnPaint()函数执行主窗口的界面描绘操作,将主窗口的描绘结果存放到所述全局静态内存空间;根据主窗口的标志位,判断主窗口是否首次执行OnPaint()函数的描绘操作;若是,则在OnPaint()函数的描绘操作中枚举并描绘主窗口所包含的所有子窗口,将描绘结果输出显示;若否,则直接将描绘结果输出显示。本发明还提供一种Windows应用程序多窗口并行绘图的系统。实施本发明提供的技术方案,可以提高Windows应用程序多窗口绘图效率。
技术领域
本发明涉及嵌入式系统技术领域,尤其涉及一种Windows应用程序多窗口并行绘图的方法及系统。
背景技术
随着计算机技术的发展,计算机设备被广泛地应用到了生活、工作中的方方面面。在这些计算机设备中,通常均安装有微软公司的Windows操作系统,通过Windows操作系统,用户可运行多种应用程序,包括网页浏览、文档写作等。Windows是一种图形用户界面的操作系统,它把包括文本在内的所有数据都显示为屏幕上的图像。
MFC(Microsoft Foundation Classes)类库(Class Libraries),包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类;其以C++类的形式封装了Windows的API(应用程序编程接口),并且包含一个应用程序框架,它屏蔽了显示设备的特性,给程序员提供了一个统一的绘图界面,以减少应用程序开发人员的工作量。
目前使用MFC描绘界面的一般方法为:创建一个继承于CDialog的窗口作为界面,并以此窗口为主窗口(亦称为父窗口),创建多个子窗口。主窗口创建完成后,会调用主窗口的OnInitDialog()函数,MFC会根据创建的窗口顺序,对应处理WM_PAINT消息分别调用各自的OnPaint()函数,把所有的窗口的背景描绘出来。
但是,嵌入式系统的CPU、内存等与PC相差比较大,现有技术在利用MFC方法进入包含了多个窗口的界面后(如用于输入的键盘界面上),由于各个窗口都需要调用一次OnPaint()函数(创建资源、绘图、释放资源等一系列),导致用户在视觉看到界面上的窗口一个接一个按顺序创建并描绘,显示效果很不流畅,机器性能和描绘效果较差,用户体验效果非常不佳。
发明内容
本发明所要解决的技术问题是,提供一种Windows应用程序多窗口并行绘图的技术方案,实现多窗口同时绘图的控制,避免每次进入一个主窗口界面时,由于父窗口和各个子窗口的顺序描绘引起界面不流畅的现象,提高嵌入式系统中的Windows应用程序多窗口绘图效果,并提升用户体验。
为解决以上技术问题,一方面,本发明实施例提供一种Windows应用程序多窗口并行绘图的方法,包括:
创建主窗口及其所属的多个子窗口,并为所述主窗口和子窗口创建一个全局静态内存空间和全局静态内存位图;
创建Windows应用程序的一个类库,从所述类库中调用OnPaint()函数执行主窗口的界面描绘操作,将主窗口的描绘结果存放到所述全局静态内存空间;
根据主窗口的标志位,判断主窗口是否首次执行OnPaint()函数的描绘操作;
若是,则在OnPaint()函数的描绘操作中枚举并描绘主窗口所包含的所有子窗口,将描绘结果存放在所述全局静态内存空间中并输出显示;若否,则直接将所述全局静态内存空间中存放的描绘结果输出显示。
在一种可实现的方式中,所述在OnPaint()函数的描绘操作中枚举并描绘主窗口所包含的所有子窗口,将描绘结果存放在所述全局静态内存空间中,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于惠州市德赛西威汽车电子股份有限公司,未经惠州市德赛西威汽车电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710519798.4/2.html,转载请声明来源钻瓜专利网。