|
|
#include "stdafx.h"
HWND hList = NULL;
LRESULT CALLBACK DlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
MSG msg;
DialogBox( hInstance, (LPCTSTR)IDD_LIST, NULL, (DLGPROC)DlgProc );
if(GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return (int)msg.wParam ;
}
LRESULT CALLBACK DlgProc(HWND hDlg,UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_INITDIALOG :
hList = GetDlgItem( hDlg, IDC_LIST1);
SendMessage( hList, LB_ADDSTRING , 0, (LPARAM)"this is one");
SendMessage( hList, LB_ADDSTRING , 1, (LPARAM)"this is two");
break;
case WM_COMMAND:
switch( LOWORD(wParam))
{
case IDC_LIST1:
switch(HIWORD(wParam))
{
case LBN_SELCHANGE:
char szText[MAX_PATH];
char szTmp[MAX_PATH];
int nIndex = (int)SendMessage( hList, LB_GETCURSEL , 0, 0 );
SendMessage( hList, LB_GETTEXT , nIndex, (LPARAM)&szTmp );
sprintf( szText, "你选择了%d行,内容为:%s", nIndex + 1, szTmp );
MessageBox( NULL, szText, "信息", MB_OK );
break;
}
break;
}
break;
case WM_CLOSE:
PostQuitMessage(0);
break;
default:
break;
}
return false;
} |
|