C# 怎样用sendmessage 鼠标双击消息?急急急!!!!在线等!!!

///<summary>///双击鼠标左键///</summary>publicconstintWM_LBUTTONDBLCLK=0x203;[DllImport("us... /// <summary>
/// 双击鼠标左键
/// </summary>
public const int WM_LBUTTONDBLCLK = 0x203;

[DllImport("user32.dll", EntryPoint = "SendMessage")]
public static extern int SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);

//双击
private void btnUser_DoubleClick(object sender, EventArgs e)
{
//给本窗体发送单击消息
SendMessage(this.Handle, WM_LBUTTONDBLCLK, 0, 0);
}

//窗体双击事件
private void Form1_DoubleClick(object sender, EventArgs e)
{
//处理数据
DealData();
}

上面的代码是我根据网上找的一些资料,然后写的一个小测试程序,目的是想看看是否能发送鼠标双击事件。
在应用中,任何控件的DoubleClick()事件,任意鼠标键(左键、中键、右键)双击都可以进入到DoubleClick()事件中。现在我就是想模拟这一过程,即按一个热键如F10,就发送一个双击鼠标事件,但在网上找了一些资料都是差不多的,都只说了双击左键、双击中键、双击右键,然后我就写了上面的测试程序,单击一个按钮事件,发送一个鼠标双击事件给窗体,可是窗体的DoubleClick()事件里的DataDeal()函数并没有执行。之后我在窗体的DataDeal()函数打了断点,单击按钮,结果是程序并没有进入到此断点,这说明了一个问题,那个发送鼠标双击消息没有发对!
我在网上找呀找,还是没有找到解决方法,不知道前辈们能否帮帮后生小弟,小弟不胜感激!
展开
 我来答
liu198661hf3e
2012-11-16 · TA获得超过366个赞
知道小有建树答主
回答量:344
采纳率:0%
帮助的人:255万
展开全部
欧巴,你光发LBUTTONDBLCLK 还不够。
再给他发一个WM_LBUTTONUP事件

public const int WM_LBUTTONUP=0x0202;

//给本窗体发送单击消息
SendMessage(this.Handle, WM_LBUTTONDBLCLK, 0, 0);
SendMessage(this.Handle, WM_LBUTTONUP, 0, 0);

如果问题解决请设为满意,谢谢
更多追问追答
追问
还是不行,不过还是先谢谢了!
再者我想恳请回答者自己先试一下,因为我不能追问太多,分数不够了!
谢谢!
追答
我的试过了,可行
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式