设为首页 加入收藏

TOP

17.4.2 DrawNow()模式
2013-10-07 01:05:22 来源: 作者: 【 】 浏览:68
Tags:17.4.2 DrawNow 模式

17.4.2  DrawNow()模式

有必要在这里暂停一下,注意关于应用程序发起的重绘的一些规则:

应用程序发起的重绘通常在使用函数名为DrawXxxNow()格式的函数中完成,Xxx代表应用程序特定的图形元素,比如OneTile;

DrawXxx()函数(没有 Now)期待从一个激活的图形上下文和开始重绘的相关环境中调用,绘制到预先标记为无效的区域;

简单的DrawXxxNow()无效化、激活图形上下文,开始重绘,调用DrawXxx(),结束重绘,然后禁用图形上下文;

更复杂的DrawXxxNow()函数可能需要调用很多DrawXxx()函数;

如果可以,应该避免连续多次调用 DrawXxxNow()函数,因为它涉及(典型的)多余的无效化、激活图形上下文和开始重绘的代码;

任何情况下避免从激活图形上下文/开始重绘代码中调用 DrawXxxNow()函数,因为如果当这样的代码已经处于激活状态而你重复这些函数时,就会造成严重错误。

在自己的应用程序中,对于任意选择的重绘可以容易地复制DrawNow()模式。

在这一章稍后的部分将看到激活和开始重绘函数实际上是如何做的。

【责任编辑:董书 TEL:(010)68476606】

回书目   上一节   下一节

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇17.3.2 Draw()约定(1) 下一篇17.5.3 复合控件

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: