/**************/ /* strtest.c */ /**************************************************************************** PROGRAM: strtest.C PURPOSE: Ohjelma STRLIB-kirjaston testaamiseksi. Editor: Vesa Lappalainen 9.11.1992 & 29.8.1994 PROJECT: Ohjelma voidaan kääntää käyttämään joko .DLL-kirjastoa tai tavallista kirjastoa. STRDLL-kirjasto: 1) Käännä strlib.c siellä olevien ohjeiden mukaan strdll.dll:ksi 2) Tee tälle pääohjelmalle projekti: strtest.c dlltest.def LIB\strdll.lib ALI\tabhand.c ALI\savepos.c Tavallinen kirjasto: 1) Tee projekti: strtest.c strtest.def strlib.c strlib.rc ****************************************************************************/ #include #include #include "tabhand.h" #include "strlib.h" #include "savepos.h" #define NAME NULL // "f:\\a.ini" /***************************************************************************/ TblClassSWindowMAIN("WKysyjonoWClass",NULL,"Kysyjono-testi",MsgTbl,0); /***************************************************************************/ static char jono[50]; static EVENT WM_lbuttondown(tMSGParam *msg) { KysyJono("Tiedoston nimi?",jono,jono,sizeof(jono)); InvalidateRect(msg->hWnd,NULL,TRUE); return 0; } static EVENT WM_paint(tMSGParam *msg) /* # MAKE_DC # */ { TextOut(msg->hDC, 10, 10, jono,strlen(jono)); return 0; } static EVENT WM_create(tMSGParam *msg) { GetModuleFileName(GetWindowInstance(msg->hWnd),jono,sizeof(jono)); RestorePos(msg->hWnd,NAME,"Paikka",1); return 0; } static EVENT WM_destroy(tMSGParam *msg) { SavePos(msg->hWnd,NAME,"Paikka",1); PostQuitMessage(0); return 0; } /***************************************************************************/ static tMSGEntry MsgTbl[] = { { WM_CHAR , DoC , DoC , WM_lbuttondown }, { WM_LBUTTONDOWN , DoC , DoC , WM_lbuttondown }, /*a*/ { WM_PAINT , DoC , DoC , WM_paint, MAKE_DC }, /*a*/ { WM_CREATE , DoC , DoC , WM_create }, /*a*/ { WM_DESTROY , DoC , DoC , WM_destroy }, /*a*/ { 0 } }; /***************************************************************************/