如何使用MFC编程实现找到一个窗口以及获取窗口上的按钮

如何使用MFC编程实现找到一个窗口以及获取窗口上的按钮,第1张

QQ有安全保护,你确定能像普通程序窗口一样获取?

另外这个是用的系统标准控件吗?

不是DirectDraw出来的,WPF之类弄出来的?

要不就是FindWindowEx, GetWindow GetNextWindow

自己先测试普通程序窗口按钮

用Microsoft Spy++看看窗口类及各种OOXX

CButton m_buttonStop;//h文件

DDX_Control(pDX, IDC_STOP, m_buttonStop);//cpp文件DoDataExchange中

m_buttonStopEnableWindow(FALSE);//其它方法中设置不可用

1重载PreTranslateMessage函数

2实现如下代码

BOOL

CMouseDlg::PreTranslateMessage(MSG

pMsg)

{

//

TODO:

Add

your

specialized

code

here

and/or

call

the

base

class

if(pMsg->hwnd

==

GetDlgItem(IDC_BUTTON1)->GetSafeHwnd()

&&

pMsg->message

==

WM_MOUSEMOVE)

{

CString

windowText;

GetDlgItem(IDC_BUTTON1)->GetWindowText(windowText);

//得到按钮文本

GetDlgItem(IDC_STATIC1)->SetWindowText(windowText);

//显示到静态文本框

}else

if(pMsg->hwnd

==

GetDlgItem(IDC_BUTTON2)->GetSafeHwnd()

&&

pMsg->message

==

WM_MOUSEMOVE)

{

CString

windowText;

GetDlgItem(IDC_BUTTON2)->GetWindowText(windowText);

GetDlgItem(IDC_STATIC1)->SetWindowText(windowText);

}

return

CDialog::PreTranslateMessage(pMsg);

}

用二进制位 *** 作啊,比如0x10表示第1个按钮,0x08为第2个按钮,那么两个按钮都按下就是0x18,判断时

if(n & 0x10) //第一个按下了

if( n & 0x08 ) //第二个按下了

其他类似

给你说说原理:按下漏洞修复后,原来的那个就被替换成了现在的,所以你按下立即修复后,其实那个漏洞修复并没有焦点,焦点在立即修复上,但是你看到就好像漏洞修复也有焦点,这就是的原因。

你要实现这种效果,就做两个, *** 作时进行替换就可以了

以上就是关于如何使用MFC编程实现找到一个窗口以及获取窗口上的按钮全部的内容,包括:如何使用MFC编程实现找到一个窗口以及获取窗口上的按钮、mfc 如何获取Button的disable属性、MFC中静态文本框获取鼠标移动到按钮上的消息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9658029.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存