itoa(number,text,10);
SetWindowText(text_number,text);
};
void draw_find(int number, string famely);
void draw_find(int number, string famely)
{
char val[5];
LVITEM lvi;
ZeroMemory(&lvi, sizeof(lvi));
ListView_DeleteAllItems(hwndFind);
lvi.mask = LVIF_TEXT;
lvi.iItem = 0;
lvi.iSubItem = 0;
_itoa(number+1,val,10);
lvi.pszText = val;
lvi.iItem = ListView_InsertItem(hwndFind, &lvi);
lvi.iSubItem++;
lvi.pszText = (char *) famely.c_str();
ListView_SetItem(hwndFind, &lvi);
int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
// çàïîëíåíèå ñòðóêòóðû WNDCLASS
wcl.hInstance = hInstance;
wcl.lpszClassName = szWinName;
wcl.lpfnWndProc = WindowFunc;
wcl.style = 0;
wcl.hIcon = LoadIcon(NULL, IDI_ASTERISK);
wcl.hCursor = LoadCursor(NULL,IDC_ARROW);
wcl.lpszMenuName = NULL;
wcl.cbClsExtra = 0;
wcl.cbWndExtra = 0;
wcl.hbrBackground = (HBRUSH)COLOR_WINDOW;
//ðåãåñòðèðóåì îêîííûé êëàññ
RegisterClass(&wcl);
// Èíèöèàëèçàöèÿ êîììîí êîíòðîëîâ
InitCommonControls();
//ñîçäàåì ãëàâíîå îêíî è ýëåìåíòû óïðàâëåíèÿ
hwnd = CreateWindow(szWinName, "Kursovik", WS_OVERLAPPEDWINDOW ^ WS_THICKFRAME ^ WS_MAXIMIZEBOX, CW_USEDEFAULT, CW_USEDEFAULT, 500, 350, HWND_DESKTOP, NULL, hInstance, NULL);
// Ñîçäà¸ì îêíî ñ ðåçóëüòàòàìè ñîðòèðîâêè
hwndSort = CreateWindowEx(0L, WC_LISTVIEW, "",WS_VISIBLE | WS_BORDER | WS_CHILD |LVS_REPORT,250, 30, 100, 170,hwnd, NULL, hInstance, NULL);
hwndFind = CreateWindowEx(0L, WC_LISTVIEW, "",WS_VISIBLE | WS_BORDER | WS_CHILD |LVS_REPORT,370, 30, 100, 170,hwnd, NULL, hInstance, NULL);
// Âñòàâëÿåì ñòîëáöû
LV_COLUMN lvc;
memset(&lvc, 0, sizeof(lvc));
lvc.iSubItem = 0;
lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
lvc.fmt = LVCFMT_LEFT;
lvc.iSubItem++;
lvc.cx = 30;
lvc.pszText = "#";
ListView_InsertColumn(hwndSort, lvc.iSubItem, &lvc);
ListView_InsertColumn(hwndFind, lvc.iSubItem, &lvc);
lvc.cx = 70;
lvc.pszText = "Famely";
/* Äîáàâëÿåì êíîïêè */
button_last = CreateWindow("button", "<< Last", WS_CHILD | WS_VISIBLE, 150, 270, 70, 25, hwnd, NULL, hInstance, NULL);
button_next = CreateWindow("button", "Next >>", WS_CHILD | WS_VISIBLE, 250, 270, 70, 25, hwnd, NULL, hInstance, NULL);
/* Åäèò áîêñû */
edit_famely=CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,75,10,150,25,hwnd,NULL,hInstance,NULL);
edit_name=CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,75,40,150,25,hwnd,NULL,hInstance,NULL);
edit_tituls = CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,75,70,150,25,hwnd,NULL,hInstance,NULL);
edit_wons = CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,75,100,150,25,hwnd,NULL,hInstance,NULL);
edit_pouls = CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,75,130,150,25,hwnd,NULL,hInstance,NULL);
edit_blaps = CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,75,160,150,25,hwnd,NULL,hInstance,NULL);
edit_races = CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,75,190,150,25,hwnd,NULL,hInstance,NULL);
edit_frace = CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,75,220,150,25,hwnd,NULL,hInstance,NULL);
edit_find = CreateWindowEx(WS_EX_CLIENTEDGE,"edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,320,230,150,25,hwnd,NULL,hInstance,NULL);
/* Âíîñèì òåêñò */
text_1 = CreateWindow("static","Famely",WS_CHILD|WS_VISIBLE,5,15,50,15,hwnd,NULL,hInstance,NULL);
text_2 = CreateWindow("static","Name",WS_CHILD|WS_VISIBLE,5,45,50,15,hwnd,NULL,hInstance,NULL);
text_3 = CreateWindow("static","Tituls",WS_CHILD|WS_VISIBLE,5,75,50,15,hwnd,NULL,hInstance,NULL);
text_4 = CreateWindow("static","Wons",WS_CHILD|WS_VISIBLE,5,105,50,15,hwnd,NULL,hInstance,NULL);
text_5 = CreateWindow("static","Pouls",WS_CHILD|WS_VISIBLE,5,135,50,15,hwnd,NULL,hInstance,NULL);
text_6 = CreateWindow("static","Best laps",WS_CHILD|WS_VISIBLE,5,165,65,15,hwnd,NULL,hInstance,NULL);
text_7 = CreateWindow("static","Races",WS_CHILD|WS_VISIBLE,5,195,50,15,hwnd,NULL,hInstance,NULL);
text_8 = CreateWindow("static","First race",WS_CHILD|WS_VISIBLE,5,225,65,15,hwnd,NULL,hInstance,NULL);
text_9 = CreateWindow("static","Sort result:",WS_CHILD|WS_VISIBLE,250,5,75,15,hwnd,NULL,hInstance,NULL);
text_10 = CreateWindow("static","Find result:",WS_CHILD|WS_VISIBLE,370,5,75,15,hwnd,NULL,hInstance,NULL);
text_11 = CreateWindow("static","Search:",WS_CHILD|WS_VISIBLE,260,235,60,15,hwnd,NULL,hInstance,NULL);
text_number = CreateWindow("static","0",WS_CHILD|WS_VISIBLE,230,270,15,15,hwnd,NULL,hInstance,NULL);
// îòîáðàæàåì è îáíîâëÿåì îêíî
ShowWindow(hwnd, nCmdShow);
UpdateWindow(hwnd);
menu = LoadMenu(hInstance, MAKEINTRESOURCE(ID_MENU));
SetMenu(hwnd, menu);
//öèêë îáðàáîòêè ñîîáùåíèé
while(GetMessage(&msg, NULL, 0, 0))
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
int i=0;
// îêîííàÿ ôóíêöèÿ
LRESULT CALLBACK WindowFunc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
switch(iMsg)
case WM_DESTROY:
PostQuitMessage(0);
break;
case WM_COMMAND:
if(((HWND)lParam == button_last) && (HIWORD(wParam) == BN_CLICKED))
if(number>1)
number--;
// Ñîõðàíÿåì ýëåìåíò
char text[50];
GetWindowText(edit_blaps,text,20);
app.racers[number].blaps = atoi((const char *)text);
GetWindowText(edit_famely,text,20);
app.racers[number].famely = (string) text;
GetWindowText(edit_frace,text,20);
app.racers[number].frace = (string) text;
GetWindowText(edit_name,text,20);
app.racers[number].name = (string) text;
GetWindowText(edit_pouls,text,20);
app.racers[number].pouls = atoi((const char *)text);
GetWindowText(edit_races,text,20);
app.racers[number].races = atoi((const char *)text);
GetWindowText(edit_tituls,text,20);
app.racers[number].tituls = atoi((const char *)text);
GetWindowText(edit_wons,text,20);
app.racers[number].wons = atoi((const char *)text);
// Çàïèñûâàåì íîâûé
SetWindowText(edit_famely, (char*)app.racers[number-1].famely.c_str());
SetWindowText(edit_name, (char*)app.racers[number-1].name.c_str());
itoa(app.racers[number-1].tituls,text,10);
SetWindowText(edit_tituls, text);
itoa(app.racers[number-1].wons,text,10);
SetWindowText(edit_wons, text);
itoa(app.racers[number-1].pouls,text,10);
SetWindowText(edit_pouls, text);
itoa(app.racers[number-1].blaps,text,10);
SetWindowText(edit_blaps, text);
itoa(app.racers[number-1].races,text,10);
SetWindowText(edit_races, text);
SetWindowText(edit_frace,app.racers[number-1].frace.c_str());
// Êíîïêà äàëåå
if(((HWND)lParam == button_next) && (HIWORD(wParam) == BN_CLICKED))
if(number<app.racers.size())
Ñòðàíèöû: 1, 2, 3, 4, 5