我现在需要在对话框上面动态的显示16个GroupBox,排起来,应该怎么做?
CButton m_GroupBox[16];
CRect    rcWindow[16];
for(int j=0;j<16;j++)
{
m_GroupBox[j].Create("",BS_GROUPBOX,CRect(40*j,0,40,30), this,2000+j); 
GetDlgItem(2000+j)->GetWindowRect(rcWindow[j]);
ScreenToClient(&rcWindow[j]);
}
这个样子不可以啊,this代表什么意思?做出来的GroupBox显示不出来,请教高手帮忙。

解决方案 »

  1.   

    m_GroupBox[j].ShowWindow(SW_SHOW)create以后要show出来this代表什么意思?
    this指针,可以理解成指向你自己那个对象的指针
    比如在对话框里,那么this就是指向你这个对话框对象
    建议你随便找本c++的书翻一下,比较权威
      

  2.   

    CButton m_GroupBox[16]; //声明为类成员变量m_GroupBox[j].Create("",BS_GROUPBOX|WS_CHILD|WS_VISIBLE,CRect(40*j,0,40,30), this,2000+j); 
      

  3.   

    谢谢指点,不过出来的GroupBox,只显示一个,后面的框出不来
      

  4.   

    CButton m_GroupBox[16]; //声明为类成员变量
    这个我也声明为类成员变量了,可是怎么弄都只显示一个GroupBox?
      

  5.   

    CButton m_GroupBox[16];
    CRect    rcWindow[16];
    for(int j=0;j<16;j++)
    {
    m_GroupBox[j].Create("",BS_GROUPBOX|WS_VISIBLE,CRect(40*j,0,40*(j+1)-5,30), this,2000+j); 
    GetDlgItem(2000+j)->GetWindowRect(rcWindow[j]);
    ScreenToClient(&rcWindow[j]);
    }
      

  6.   

    可以显示出来了,谢谢大家的帮助,我是刚开始接触VC,想找位师傅,哪位愿意,请加我的QQ号码54749440
      

  7.   

    m_GroupBox[j].ShowWindow(SW_SHOW)
    来晚了