Операционная система Windows 95 для программиста



         

Исходные тексты приложения List Application - часть 5


// Определяем номер выделенного элемента index = ListView_GetNextItem(hwndList, -1, LVNI_ALL | LVNI_SELECTED);

if(index == -1) return 0;

// Подготавливаем структуру типа LV_ITEM // для получения текстовой информации об элементах memset(&lvi, 0, sizeof(lvi)); lvi.mask = LVIF_TEXT;

// Получаем название элемента lvi.iItem = index; lvi.iSubItem = 0; ListView_GetItem(hwndList, &lvi); strcat(szBuf, lvi.pszText);

// Получаем текстовую строку, связанную // с первым и вторым дополнительным элементом lvi.iItem = index; lvi.iSubItem = 1; ListView_GetItem(hwndList, &lvi); strcat(szBuf, " : "); strcat(szBuf, lvi.pszText);

lvi.iItem = index; lvi.iSubItem = 2; ListView_GetItem(hwndList, &lvi); strcat(szBuf, " : $"); strcat(szBuf, lvi.pszText);

// Выводим на экран текстовые строки // для выбранного элемента MessageBox(hWnd, szBuf, szAppName, MB_OK); return 0L; break; } } return 0L; }

// ----------------------------------------------------- // Функция WndProc_OnSize // ----------------------------------------------------- #pragma warning(disable: 4098) void WndProc_OnSize(HWND hwnd, UINT state, int cx, int cy) { MoveWindow(hwndList, 0, 0, cx, cy, TRUE); return FORWARD_WM_SIZE(hwnd, state, cx, cy, DefWindowProc); }

// ----------------------------------------------------- // Функция LVCompareProc // ----------------------------------------------------- int CALLBACK LVCompareProc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort) { APPLINFO *pAppInfo1 = (APPLINFO *)lParam1; APPLINFO *pAppInfo2 = (APPLINFO *)lParam2; LPSTR lpStr1, lpStr2; int iResult;

if(pAppInfo1 && pAppInfo2) { switch(lParamSort) { case 0: lpStr1 = pAppInfo1->szAppName; lpStr2 = pAppInfo2->szAppName; iResult = strcmpi(lpStr1, lpStr2); break;

case 1: lpStr1 = pAppInfo1->szIconName; lpStr2 = pAppInfo2->szIconName; iResult = lstrcmpi(lpStr1, lpStr2); break;

case 2: iResult = pAppInfo1->iCost - pAppInfo2->iCost; break;

default: iResult = 0; break; } } return(iResult); }




Содержание  Назад  Вперед