Aşağıdaki kodları ListView kontrolünün içinde tanımlandığı pencerenin fonksiyonu içinde kullanarak, bir ListView kontrolünde tıklanan satır ve sütun indeks değerlerini alabiliriz.
Bu kodları kullanabilmek için, ListView kontrolünün LVS_EX_FULLROWSELECT özelliği ile oluşturulması gerekmektedir.
// ListView kontrolü oluşturma
hwndListView = CreateWindowEx(WS_EX_CLIENTEDGE , WC_LISTVIEW, "",
WS_CHILD | LVS_REPORT | WS_VISIBLE,
10, 10, 494, 185, hwnd,
(HMENU) IDC_LISTVIEW, NULL, NULL);
ListView_SetExtendedListViewStyle(hwndListView, LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
.
.
.
case WM_NOTIFY:
{
switch (((LPNMHDR)lParam)->code) {
case NM_CLICK:
{
if (((LPNMHDR)lParam)->hwndFrom == hwndListView) {
LPNMITEMACTIVATE lpnmia = (LPNMITEMACTIVATE)lParam;
char cdizi[60];
// ListView kontrolu LVS_EX_FULLROWSELECT özelliği ile tanımlandığında,
// NM_CLICK bildirim mesajında lpnmia->iItem ve lpnmia->iSubItem değerleri
// seçilen satır ve sütun indeks değerlerini verir.
sprintf(cdizi, "Satır indeks değeri: %d, Sütun indeks değeri: %d", lpnmia->iItem, lpnmia->iSubItem);
MessageBox(NULL, cdizi, "Satır ve sütun değerleri", MB_OK);
}
}
}