MFC的对话框中的图片背景和button重叠问题
我先在对话框中添加一块背景图(picturecontrol),然后在上面置一个button,默认是HIDEN,再响应事件后,buttonshow出来,但是发现(鼠标放置在...
我先在对话框中添加一块背景图(picture control),然后在上面置一个button,默认是HIDEN, 再响应事件后,button show出来,但是发现(鼠标放置在button将要出现的位置时)button显示不了,只有鼠标离开这个区域才出现。 后来发现是图片覆盖了button,只有移动鼠标离开button位置,图片中才显示出button,请教各位, 这个问题是什么现象, 我在对话框中,ctrl+D, 图片顺序为1,button为2, 反之也不行。
展开
展开全部
你这个方法不好用,且很难控制。两个控件重叠本身就是矛盾的,因为你压根不知道谁先触发了Windows重绘,要尽量避免控件重叠。
解决办法是,直接在窗体的OnPaint函数里,描绘你的背景即可。不需要单独使用picutre control。
解决办法是,直接在窗体的OnPaint函数里,描绘你的背景即可。不需要单独使用picutre control。
更多追问追答
追问
任哥,我用onpaint中绘图在对话中,但是效果还是跟picture控件一样,需要我鼠标离开"BUTTON"区域,才能显示出这个按钮,如果当前鼠标不在BUTTON区域, 就能正常显示按钮.
感觉和当前鼠标位置有关呀,是不是鼠标挡在BUTTON区域的话, ShowWindow(SW_SHOW)再加上背景图,就 不起作用呀,
如果我取消掉背景图, 就不会出现鼠标挡住BUTTON的现象.
追答
你的Button是自己绘图的吗?还是Button的绘图和背景的绘图都放在一起了?如果放在一起就可能出现被覆盖的现象。
你把你Button绘图的代码贴出来给我看看。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询