目标:点击按钮后弹出一个有n个编辑框的对话框
我试着用createwindow创建一个编辑框但没成功,代码如下:
void COO4ODialogDlg::OnAdd() 
{     CAddDialog AddDialog;
HWND hwnd,hEdit;
HINSTANCE hInst;
hInst=AfxGetInstanceHandle();

   
hwnd=AddDialog->m_hWnd;
hEdit=CreateWindow("EDIT",NULL,WS_CHILD|WS_VISIBLE     |ES_LEFT,50,20,50,20,hwnd,NULL,hInst,NULL);
AddDialog.DoModal();
}
ps:vc++中是否可以用控件数组?

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/4341/4341978.xml?temp=.8672144这位同志,你好像相同的问题问了不止一次了,问完了不看回复的?
      

  2.   

    可以使用控件数组。既然你再用MFC,直接使用CEdit类比较好。下面是一段动态创建checkbox的代码,可以参考:BOOL CXXXXDlg::CreateCheckBox(int nIndex, BOOL bChecked /* = TRUE */)
    {
    CRect rcList, rcItem;
    m_listProcess.GetWindowRect(&rcList);
    ScreenToClient(rcList);
    m_listProcess.GetItemRect(nIndex, &rcItem, LVIR_BOUNDS);
    CButton *pCheckBox = new CButton;
    pCheckBox ->Create(_T(""), BS_AUTOCHECKBOX | WS_CHILD | WS_VISIBLE,
    CRect(rcList.left - 15, rcItem.top + 13, rcList.left, rcItem.bottom + 8), 
    this, m_nCBID ++);
    pCheckBox ->SetCheck(bChecked);
    m_cbList.AddTail(pCheckBox);
    return TRUE;
    }m_cbList就是一个控件链表.
      

  3.   

    to Mackz:
    你的回复已经看了,创建一个编辑框已经搞定了。
    现在的问题是创建多个
      

  4.   

    多CreateWindow就可以了,见Hendy_So(横笛)
      

  5.   

    问题是:编辑框的个数是由参数决定的,对话框弹出就要显示
    但是CDialog的OnInitDialog函数不能带参数啊