/**************/ /* vbxtesti.c */ /**************************************************************************** ** PROGRAM: vbxtesti.c ** PURPOSE: Testataan VBX-kontrollien lisäämistä C-ohjelmaan ** Windows: Win 3.1 ** Editor: Vesa Lappalainen 5.10.1995 ** Projektiin tarvitaan: ** vbxtesti.c - tämä tiedosto ** vbxtesti.def - moduulin määrittely ** vbxtesti.rc - resurssit ** ALI\tabhand.c - viestitaulukon käsittely ** ALI\mdialog.c - dialogien käsittely ** ****************************************************************************/ #include /* Tarvitaan kaikissa Windows C-ohjelmissa */ #include #include "tabhand.h" #include "mdialog.h" #include "vbxtesti.rh" /***************************************************************************/ /* Seuraavilla makroilla luodaan dialogin ikkunafunktio ja pääohjelma! */ TblClassDlgMAINWCPROCVBX("VBXtestClass",NULL,NULL,"DIALOG_1",MsgTbl,NULL,DefDlgProc); /***************************************************************************/ static EVENT WM_initdialog(tMSGParam *msg) { (void)msg; VBXInitDialog( msg->hWnd, GetWindowInstance(msg->hWnd), "DIALOG_1" ); return 0; } static EVENT WM_command_IDCANCEL(tMSGParam *msg) { PostQuitMessage((int)msg->extra); return 0; } #define VBX 1 #if VBX static EVENT WM_vbxfireevent(tMSGParam *msg) { VBXEVENT FAR * lpEvent = (VBXEVENT FAR *)msg->lParam; switch( lpEvent->ID ) { case IDC_SHEET1: if( ! lstrcmpi( lpEvent->EventName, "SelChange" ) ) MessageBeep(0); break; } return 0; } #endif /***************************************************************************/ static tMSGEntry MsgTbl[] = { { WM_COMMAND , IDCANCEL, DoC, WM_command_IDCANCEL , 0 , 0}, /*a*/ { WM_INITDIALOG , DoC, DoC, WM_initdialog , 0 , 0}, /*a*/ #if VBX { WM_VBXFIREEVENT, DoC, DoC, WM_vbxfireevent , 0 , 0}, /*a*/ #endif { 0 } };