易语言API消息函数问题
比如,在易语言中的外型框,当易语言调试运行的时候,鼠标按住外型框是不可以拖动的,但是当在外型框左键被按下事件子程序下写如一句代码。发送信息(161,2,0)再次调试运行的...
比如,在易语言中的外型框,当易语言调试运行的时候,鼠标按住外型框是不可以拖动的,但是当在外型框左键被按下事件子程序下写如 一句代码。
发送信息(161,2,0) 再次调试运行的时候就可以发现 鼠标按住外型框可以随意拖动启动窗口, 这里的发送信息相当与API函数里面的发送消息 虽然这里实现了这个功能,但是里面有很多问题令我不解。 比如,161是个消息名称 他的意思是:当光标在一个窗口的非客户区同时按下鼠标左键时提交此消息 但是这里的有个 参数 是 2 另外一个参数是0 这个就让我搞不明白了。 Windows 消息机制 让我头疼很长一段时间了,希望哪个高手出来帮我解决一下我的问题。非常感谢。 展开
发送信息(161,2,0) 再次调试运行的时候就可以发现 鼠标按住外型框可以随意拖动启动窗口, 这里的发送信息相当与API函数里面的发送消息 虽然这里实现了这个功能,但是里面有很多问题令我不解。 比如,161是个消息名称 他的意思是:当光标在一个窗口的非客户区同时按下鼠标左键时提交此消息 但是这里的有个 参数 是 2 另外一个参数是0 这个就让我搞不明白了。 Windows 消息机制 让我头疼很长一段时间了,希望哪个高手出来帮我解决一下我的问题。非常感谢。 展开
2个回答
展开全部
我不懂易语言。
它实际上就是在响应WM_LBUTTONDOWN消息时,发送一条WM_NCLBUTTONDOWN消息,让windows误以为用户点击了窗口标题栏,从而实现了拖动窗口。
这里的wParam是WM_HITTEST的返回值。这里是2就是点击了标题栏,见MSDN,http://msdn.microsoft.com/en-us/library/ms645618%28v=VS.85%29.aspx
lParam是一个POINT结构体,这里为0实际上就是忽略了这个参数。详细参数见MSDN
它实际上就是在响应WM_LBUTTONDOWN消息时,发送一条WM_NCLBUTTONDOWN消息,让windows误以为用户点击了窗口标题栏,从而实现了拖动窗口。
这里的wParam是WM_HITTEST的返回值。这里是2就是点击了标题栏,见MSDN,http://msdn.microsoft.com/en-us/library/ms645618%28v=VS.85%29.aspx
lParam是一个POINT结构体,这里为0实际上就是忽略了这个参数。详细参数见MSDN
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询