WM_INITDIALOG
#include <Windows.h>
#include "resource.h"
#include<tchar.h>
#include <stdio.h>
#include <stdlib.h>
#include <TCHAR.H>
#include <Windowsx.h>
//-----------------------
LRESULT CALLBACK DlgProc(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE PrehInstance,PSTR szCmdLine,
int iCmdShow)
{
DialogBox(hInstance,MAKEINTRESOURCE(IDD_DIALOG1),NULL,(DLGPROC)DlgProc);
return 0;
}
LRESULT CALLBACK DlgProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
HWND hComboCity=GetDlgItem(hWnd,IDC_COMBOCITY);
switch( msg)
{
case WM_INITDIALOG:
ComboBox_AddString(hComboCity,TEXT("FuZhou"));
ComboBox_AddString(hComboCity,TEXT("BeiJing"));
ComboBox_AddString(hComboCity,TEXT("ShangHai"));
return TRUE;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDOK:
int iLine;
TCHAR cRow[256];
iLine=ComboBox_GetCount(hComboCity);
_itow_s(iLine,cRow,10);
MessageBox(hWnd,cRow,NULL,MB_OK);
break;
case IDCANCEL:
EndDialog(hWnd, IDCANCEL);
break;
case IDC_BUTTONDEL:
int iCurSel;
iCurSel=ComboBox_GetCurSel(hComboCity);
ComboBox_DeleteString(hComboCity,iCurSel);
break;
}
break;
default:
return FALSE;
}
return TRUE;
}
运行正常
#include <Windows.h>
#include "resource.h"
#include<tchar.h>
#include <stdio.h>
#include <stdlib.h>
#include <TCHAR.H>
#include <Windowsx.h>
//-----------------------
LRESULT CALLBACK DlgProc(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE PrehInstance,PSTR szCmdLine,
int iCmdShow)
{
DialogBox(hInstance,MAKEINTRESOURCE(IDD_DIALOG1),NULL,(DLGPROC)DlgProc);
return 0;
}
LRESULT CALLBACK DlgProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
switch( msg)
{
HWND hComboCity=GetDlgItem(hWnd,IDC_COMBOCITY
case WM_INITDIALOG:
ComboBox_AddString(hComboCity,TEXT("FuZhou"));
ComboBox_AddString(hComboCity,TEXT("BeiJing"));
ComboBox_AddString(hComboCity,TEXT("ShangHai"));
return TRUE;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDOK:
int iLine;
TCHAR cRow[256];
iLine=ComboBox_GetCount(hComboCity);
_itow_s(iLine,cRow,10);
MessageBox(hWnd,cRow,NULL,MB_OK);
break;
case IDCANCEL:
EndDialog(hWnd, IDCANCEL);
break;
case IDC_BUTTONDEL:
int iCurSel;
iCurSel=ComboBox_GetCurSel(hComboCity);
ComboBox_DeleteString(hComboCity,iCurSel);
break;
}
break;
default:
return FALSE;
}
return TRUE;
}
通不过
[解决办法]
HWND hComboCity=GetDlgItem(hWnd,IDC_COMBOCITY);
放到switch上面去。基础不够扎实!
[解决办法]
switch( msg)
{
HWND hComboCity=GetDlgItem(hWnd,IDC_COMBOCITY
case WM_INITDIALOG:
// switch 后接case ,不能插入 别的 语句。
HWND hComboCity=GetDlgItem(hWnd,IDC_COMBOCITY);
可以放 case WM_INITDIALOG:
里。