当前位置:C++技术网 > 资讯 > 网页上放置按钮,运行时看不到按钮,显示问题

网页上放置按钮,运行时看不到按钮,显示问题

更新时间:2016-08-29 13:11:26浏览次数:1+次

一个窗口中有两个不同的控件.一个是CHtmlView网页,一个是按钮控件,我想让按钮放在网页上面.但运行结果老是网页遮盖了按钮,看不到按钮了.怎么办呢?

C++技术网解答:

    CHtmlView网页和按钮控件属于两个窗口,如果你将按钮放在网页上面,你要考虑到相互遮盖的问题。因为网页的重绘导致覆盖了放在上面的按钮。其实解决问题的办法也是有的。

    网页遮盖按钮是因为网页的重绘引起的。所以,解决的关键就在于网页窗口的重绘。你可以在网页窗口重绘事件中进行拦截处理。在绘制之前,可以设置剪切区域,也就是除了按钮以外的网页区域。通过矩形区域操作,从一个区域中排除一个区域,这样也就将按钮所在的区域排除在外,网页绘制时也就不会再遮盖按钮了。

    以上是一种方法。如果你对剪切区域不太熟悉,或者觉得麻烦,另外一种方法就是,在网页绘制完毕后,发送消息给按钮,让按钮重绘。也就是,先绘制了网页内容,然后再绘制按钮,这样的话,按钮始终都在网页上面。这种方法实现起来相对简单,理解起来也简单。不过剪切区域只是大家不熟而已,其实也挺简单的。

    剪切区域(裁剪区域)的相关解释和程序案例,请参考:

GDI中的剪切区域(裁剪区域)是什么
GDI中的剪切区域的设置和使用代码详解
Win32使用剪切区域实现酷狗动态歌词特效:动态歌词颜色滚动覆盖效果
win32移动剪切区域OffsetRgn实现字符串的颜色跑马灯效果
排除剪切区域函数ExcludeClipRect详解

    更多相关文章,请在C++技术网中搜索阅读。我们只提供实现思路,具体的实现就由你自己动手。如果解决好了,不妨分享给大家。