代码如下:
HWND hList,hedit;

      switch (message)
      {

      case  WM_INITDIALOG :
hList=GetDlgItem(hDlg,IDC_LIST); 
hedit=GetDlgItem(hDlg,ID_EDIT);
                                return TRUE;

解决方案 »

  1.   

    BOOL CALLBACK InitDlgProc (HWND hDlg, UINT message,WPARAM wParam, LPARAM lParam)
    {
    int lResult;
    char szBuff[10];
    int i=0;
    HWND hList,hedit,hedit1;
    hList=GetDlgItem(hDlg,IDC_LIST); 
    hedit=GetDlgItem(hDlg,ID_EDIT);
    hedit1=GetDlgItem(hDlg,IDC_EDIT1);
          switch (message)
          {
        case   WM_CTLCOLOREDIT:
    case   WM_CTLCOLORSTATIC:
      SetBkMode((HDC)wParam,TRANSPARENT);   
      SetTextColor((HDC)wParam,   RGB(255,0,255));   
      SetBkColor((HDC)wParam,RGB(210,224,240)); 
      return  (LRESULT)CreateSolidBrush(RGB(210,224,240));
              
          case  WM_COMMAND :
               switch (LOWORD (wParam))
               {
    case ID_LOST://删除

    lResult = SendMessage( hList,LB_GETCARETINDEX,0,0  );  
        SendMessage(hList, LB_DELETESTRING, (WPARAM) lResult,0 );  

    return 0; case ID_OK:
    if(!GetWindowText(hedit1,szBuff,sizeof(szBuff)))
    {
    MessageBox(NULL,"   输入不能为空!重新输入~   ","提示",MB_OK);
    return 0;
    }
    *szBuffer=*szBuff;
                        MessageBox(NULL,"   已经设置~   ","提示",MB_OK);
    break;
    case ID_ADD://添加        
    if(!GetWindowText(hedit,szBuff,sizeof(szBuff)))
    {
    MessageBox(NULL,"   输入不能为空!重新输入~   ","提示",MB_OK);
    return 0;
    }
            SendMessage(hList, LB_ADDSTRING,i, (LPARAM)szBuff); //向列表框添加记录
                     i++;
                        
        SetWindowText(hedit,"");
    break;
              
               case  IDCANCEL :               
    EndDialog(hDlg,FALSE);
                    return TRUE ;
              }
               break ; 

    }
       return FALSE ;
    }
      

  2.   

    如果是对话框程序(MFC)对话框程序的话初始化应在OnInitDialog()里面完成。