请教一个重画的问题

中文QNX 讨论: 欢迎大家灌水,讨论有关QNX 问题。

请教一个重画的问题

帖子vinger » 周六 5月 15, 2004 9:53 pm

大家好!请教大家一个问题。我在photon下编程,直接调用photon中的原始函数
在窗口上绘图。假如之前在屏幕上绘制了一个矩形区域,现在想擦掉矩形。怎么处理保证擦掉这个矩形后,原来被矩形区域遮住的背景部分能够重新显示出来?要求是对矩形区域内的背景部分不进行重画(因为整个窗口背景是一个位图,被遮住的矩形区域只是这个位图的一部分,要重画位图的一部分不是一件容易的事)。我不知有没有表达清楚,就是想以一种简单的方法把前景擦掉,背景露出来。我注意到QNX是将所有的填充信息作为背景,而将线条、矩形边框、文本颜色等信息作为前景信息。我还注意到不论我将绘图模式设为Pg_DRAWMODE_XOR还是
Pg_DRAWMODE_AND还是Pg_DRAWMODE_OR还是Pg_DRAWMODE_OPAQUE,在第一次在raw widget上画图是没有区别的。我还发现在PtRaw widget的Pt_ARG_RAW_DRAW_F 函数似乎在窗口被创建并实例化后被调用了两次。可能这个问题太简单了,单我还是希望这里的高手能给我一些帮助。
vinger
New Member
 
帖子: 2
注册: 周二 4月 27, 2004 3:57 pm

回到 四海同心QNX论坛

在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客

cron