标题:想写一个模拟后台点击工具栏按钮的东西所遇到的问题
只看楼主
WebKiller
Rank: 2
等 级:论坛游民
帖 子:11
专家分:77
注 册:2015-1-10
结帖率:100%
已结贴  问题点数:20 回复次数:2 
想写一个模拟后台点击工具栏按钮的东西所遇到的问题
如题
我本来是想用发送消息sendmessage实现的,可是
1.    wm_command消息,我对着那个窗口点击了 工具栏的按钮 可是spy++截取不到command消息
2.    ::SendMessage(hwnd,WM_PARENTNOTIFY,WM_LBUTTONDOWN,(LPARAM)MAKELONG(496,22)); 工具栏按钮刚好位于那个位置,一点反应也没有.
搜索更多相关主题的帖子: 工具栏 command 
2015-01-10 10:30
yuccn
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:何方
等 级:版主
威 望:167
帖 子:6809
专家分:42393
注 册:2010-12-16
得分:20 
你确定你的hwnd 是接收的窗口了吗?

我行我乐
我的博客:
http://blog.yuccn. net
2015-01-10 16:04
WebKiller
Rank: 2
等 级:论坛游民
帖 子:11
专家分:77
注 册:2015-1-10
得分:0 
回复 2楼 yuccn
多谢提醒

奇怪 传的hwnd是框架窗口,怎么会接收不到子窗口的消息呢?
现在 又遇到几个问题了
1.SSTabCtlWndClass  spy++抓名为这个类名的tabctrl窗口截不到 TCM选项卡之类的消息
2.
程序代码:
HDC dc = ::GetDC(NULL);
    CDC *pDc = CDC::FromHandle(dc);
    CRect rect;
    ::GetWindowRect(hwnd,rect);
    
    pt.x += rect.left;
    pt.y += rect.top;
    COLORREF colorref;
    CString str;
    CString strTmp;
    for (int i=0; i<nCount; i++)
    {    
        colorref = pDc->GetPixel(pt);
        if (colorref != 3394100)
            return FALSE;
        str.Format("%d R:%d\tG:%d\tB:%d\tCOLORREF:%d\nxPos:%d\tyPos:%d\n",i+1
            ,GetRValue(colorref),GetGValue(colorref),GetBValue(colorref),colorref,
            pt.x,pt.y);
         strTmp +=str;
//        AfxMessageBox(str); //只要取消注释主句,循环语句 从第二次开始 GetPixel就返回-1
        pt.y += 17;
        Sleep(10);
    }
//    AfxMessageBox(strTmp);
    pDc->DeleteDC();
    return TRUE;
2015-01-11 09:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-440942-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.505372 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved