在MainFrame中,我想获得属性表单上的属性页上的EDIt控件值,,
GetWindowItemText(id,string);不行啊 有什么办法没?

解决方案 »

  1.   

    void CMainFrame::OnPropsheet() 
    {
    CPropSheet PropSheet(_T("参数"));
    if(PropSheet.DoModal()==IDOK)
    {
    CString str;
    GetDlgItemText(IDC_EDIT1,str);
    MessageBox(str);
    }
    }
    str是空的? 娶不到数据
      

  2.   

    GetDlgItemText(IDC_EDIT1,str);
    你这是取得CMainFrame中IDC_EDIT1当然取不到了
      

  3.   

    试试
    GetDlgItem(ID)->GetWindowText();
      

  4.   

    UINT GetDlgItemText( 
      HWND hDlg, 
      int nIDDlgItem, 
      LPTSTR lpString, 
      int nMaxCount
    ); 
    用::GetDlgItemText
      

  5.   


    那HWnd是多少?  你写我看看
      

  6.   

    1.把IDC_EDIT1的值保存到PropSheet的成员变量中,PropSheet调用。
    2.::GetDlgItemText(PropSheet.m_hwnd,str,100);
      

  7.   


    你要用你的属性页来获得编辑框的内容,而不是用直接从mainframe中获取啊。
      

  8.   


    恩,可以我就是要在DOMODal返回的时候读数据啊,,就在mAInframe中读
      

  9.   


    怎么把IDC_EDIT1的值保存到PropSheet的成员变量中保存?
      

  10.   

    就是点关联变量的时候,选类CPropSheet的时候,没有控件ID,只能在属性页上才能关联
      

  11.   

     可以了。 。str=PropSheet.m_prop1.m_value1;
      

  12.   


    不是,是属性表单类,CPropXXXSheet. 是派生来的,,