比如有3个BUTTON 他们的 CButton m_bn_sub4;  CButton m_bn_sub3;   CButton m_bn_sub2;现在我想三个申明的变量都存储起来,请问该如何操作呢.我本来认为CButton a[3] = {m_bn_sub4,..};就可以了,不过不行.请各位指点

解决方案 »

  1.   

    用指针吧
    CButton *a[3] = {&m_bn_sub4,..};
      

  2.   

    不行.
    哎 不知道CButton的对象该怎么存储.....
      

  3.   

    m_bn_main1.GetWindowText(SlotMessage);和GetDlgItem(BnID[i]).GetWindowText(SlotMessage);前者可行 后者出错...
      

  4.   

    GetDlgItem(BnID[i])->GetWindowText(SlotMessage);
      

  5.   

    CButton不需要存储了,楼上的代码很精彩。
      

  6.   

    我原来是存储Cbutton控件的ID然后每次用到的时候,关联变量。其实你也可以用Cstring来保存。不过不知道你具体怎么用 。
      

  7.   

    通过控件的ID号,得到此控件的句柄;
    CString str;     //用于存放取到的控件内容
    GetDlgItem(IDC_EDIT1)->GetWindowText(str);
    或 :
     int GetDlgItemText( int nID, LPTSTR lpStr, int nMaxCount ) const;
     int GetDlgItemText( int nID, CString& rString ) const;
      

  8.   

    我认为三个BUTTON的ID相连,然后GetDlgItem(IDC_BUTTON1+i)就可以了。