hur.cn - 华软网

 热门搜索

怎样获得另一个对话框中按钮的状态

  作者:未知    来源:网络    更新时间:2011/7/23
情况是这样的,有两个对话框,想在Dialog1中获取Dialog2里面按钮的状态,是否可用

1、获取按钮句柄:HWND hwnd1 = (HWND)FindWindow(NULL,"Dialog2");
2、if(GetDlgItem(IDC_BTN,&hwnd1)->IsWindowEnabled()==TRUE){}

各位高手帮帮忙,这种办法肯定不行了,,具体点哈
---华软 网友回答---
单击按钮的时候,向另一个对话框发送按钮状态变化的消息!
---华软网友回复---
C++">HWND hWnd = ::FindWindow(NULL, _T("A"));
if(hWnd)
{
HWND hButton = ::FindWindowEx(hWnd, NULL, _T("Button"), _T("OK"));
if(hButton)
{
BOOL bRet = ::IsWindowEnabled(hButton);
AfxMessageBox(bRet ? _T("Enable" : "Disable"));
}
}

---华软网友回复---
引用 2 楼 visualeleven 的回复:
C/C++ code
HWND hWnd = ::FindWindow(NULL, _T("A"));
    if(hWnd)
    {
        HWND hButton = ::FindWindowEx(hWnd, NULL, _T("Button"), _T("OK"));
        if(hButton)
        {
            BOOL ……

不行啊。。。
---华软网友回复---
怎么个不行?
---华软网友回复---
引用 4 楼 visualeleven 的回复:
怎么个不行?


我在Dialog1中添加了一个按钮,然后把你刚给的那段代码放在这个按钮的消息响应函数中了,运行后点击按钮没有反应。。
C++">HWND hWnd = ::FindWindow(NULL,"Dialog2");
if(hWnd)
{
HWND hButton = ::FindWindowEx(hWnd,NULL,NULL,"button1");
if(hButton)
{
BOOL ret = ::IsWindowEnabled(hButton);
AfxMessageBox(ret ? "Enabled" : "Diabled");
}
}

---华软网友回复---
ASSERT(hWnd);
句柄正确吗?
---华软网友回复---
引用 5 楼 liuyiliang8 的回复:
引用 4 楼 visualeleven 的回复:
怎么个不行?


我在Dialog1中添加了一个按钮,然后把你刚给的那段代码放在这个按钮的消息响应函数中了,运行后点击按钮没有反应。。

C/C++ code
HWND hWnd = ::FindWindow(NULL,"Dialog2");
    if(hWnd)
    {
        HWND hButton = :……

你Debug调试一下你的hWnd和你的hButton有值吗?
---华软网友回复---
引用 7 楼 visualeleven 的回复:
引用 5 楼 liuyiliang8 的回复:
引用 4 楼 visualeleven 的回复:
怎么个不行?


我在Dialog1中添加了一个按钮,然后把你刚给的那段代码放在这个按钮的消息响应函数中了,运行后点击按钮没有反应。。

C/C++ code
HWND hWnd = ::FindWindow(NULL,"Dialog2");
if(hWnd)
{
HWND hB……

没有值,是空的,为什么会这样呢?

---华软网友回复---
引用 6 楼 worcy_kiddy 的回复:
ASSERT(hWnd);
句柄正确吗?


debug调试了一下,hWnd是空的,找不出理由为什么是空的
---华软网友回复---
引用 9 楼 liuyiliang8 的回复:
引用 6 楼 worcy_kiddy 的回复:
ASSERT(hWnd);
句柄正确吗?


debug调试了一下,hWnd是空的,找不出理由为什么是空的

可能是你传递给FindWindow/FindWindowEx()函数的参数值不对,自己好好检查一下~
---华软网友回复---
  class="deleted_message"> 该回复于2014-08-10 10:02:57被管理员删除
---华软网友回复---
学习中      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。