首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于VC拖动控件后,背景被擦除掉的有关问题

2012-07-29 
关于VC拖动控件后,背景被擦除掉的问题,求助各位大侠,我在对话框上做了个可以拖动的STATIC静态控件,现在实

关于VC拖动控件后,背景被擦除掉的问题,求助
各位大侠,我在对话框上做了个可以拖动的STATIC静态控件,现在实现了可以拖动。对话框的背景是PDF文件的页面(用PDF的SDK写上去的,写到对话框客户区里),现在我只要拖动控件,就会拖动后,擦除掉PDF的内容(擦掉控件刚才经过的那块区域)。求助大侠呀。我看了网上的解决方法,可以用双缓冲,重绘背景,将背景图读入内存DC中。但是现在我的背景是个PDF页面呀,没法读进内存DC。
其中,PDF写页面的函数如下:m_pAcroPDPage->DrawEx((long)m_hWnd, NULL, NULL,0,0,100);。m_pAcroPDPage是PDF某个页面的指针(在其它函数中已初始化过,显示出来没问题),m_hWnd是客户区的句柄。
大家明白没呀?帮帮我呀。该怎么弄。如果将控件经过的那块区域DPF页面内容取出来,读进内存DC,可是怎么取呀?

[解决办法]
对话框设置WS_CLIPCHILDREN属性试试
[解决办法]
对话框响应消息OnEraseBkground,直接返回TRUE。试试?
[解决办法]
"拖动的静态文本框控件经过的区域" 把这个区域记录下来,然后InvalidateRectangular(&rc).

[解决办法]
每次移动时立即redrawwindow(),或者使用定时器,不停的画背景

热点排行