GDI透明背景处理

用GDI已经实现如图透明效果,但是再拖动它的时候会出现难看的虚线边框,怎样让其拖动时不出现?请最好给个实例文件行么?书面理解有点难度,谢谢,qsomnk@gmail.co... 用GDI已经实现如图透明效果,但是再拖动它的时候会出现难看的虚线边框,怎样让其拖动时不出现?
请最好给个实例文件行么?书面理解有点难度,谢谢,qsomnk@gmail.com
第三位朋友你给的答案试验了一下虽然实现了一般窗口拖动无边框效果,但是前提是删掉所有窗体控制代码,那我无法实现透明效果了,我的要求是:既能使用PNG图片得到窗体透明图片效果又能使这个透明出来的图片在鼠标拖动它的时候不显示虚线框。
PNG透明图片背景效果我已经实现了,像上面的那张图里,Windows微标图就是透明的,但是在拖动它的时候会在微标四周出现虚线框这很不美观;嵌入你的代码后倒好玩了,图片一靠近鼠标指针就跟着转悠O(∩_∩)O 不是我想要的啊。。。。
展开
 我来答
myzcxhh
2011-02-11 · TA获得超过497个赞
知道答主
回答量:182
采纳率:0%
帮助的人:219万
展开全部
这个什么也不用调,首先,将你的所有涉及移动窗体的代码全部统统删掉,然后用以下方法:先定义个全局变量:dim nx as single , ny as single 和 dim md as boolean在form_mousedown事件中输入:md=true 和nx=x : ny=y 这句用来判断用户是不是按下了鼠标,并记录按下时的坐标值,在form_mouseup事件中输入md=false 用于关闭移动动作。在form_mousemove事件中输入以下代码:if md=true then | me.left=me.left+(x-nx) | me. top=me.top+(y-ny) | end if (注:使用时,请将以上代码中的“|”符号替换成回车,因为手机回答问题不允许回车换行,所以用这个符号代替,请讲解!)以上代码可以使您的程序移动时不显示虚线框,希望对您有所帮助! 〔新〕补充:我没说让你把GDI透明处理的代码删除啊?!我是说,把你以前移动窗体的代码部分删除,因为和我这个方法会冲突,GDI处理部分依旧保持不变!明白否?
百度网友81b09c7
2011-02-09 · TA获得超过1090个赞
知道小有建树答主
回答量:217
采纳率:0%
帮助的人:159万
展开全部
调用InvalidateRect试试。。
API函数
Public Declare Function InvalidateRect Lib "user32 " Alias "InvalidateRect " (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long) As Long

Declare Function InvalidateRectBynum& Lib "user32 " Alias "InvalidateRect " (ByVal hwnd As Long, ByVal lpRect As Long, ByVal bErase As Long) 一样的、、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
961698504
2011-02-09 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:182
采纳率:0%
帮助的人:122万
展开全部
调用InvalidateRect试试。
API函数
Public Declare Function InvalidateRect Lib "user32 " Alias "InvalidateRect " (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long) As Long

123456
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式