Man kan f.ex fange LBN_DBLCLK i message handleren for dialog-boxen:
case WM_COMMAND:
if(HIWORD(wParam) == LBN_DBLCLK)
{
int Index = SendDlgItemMessage(hwndDlg, ResultListBoxId, LB_GETCURSEL, 0, 0);
if(Index != LB_ERR)
{
char Buffer[256];
SendDlgItemMessage(hwndDlg, ResultListBoxId, LB_GETTEXT, Index, (LPARAM )Buffer);
MessageBox(hwndDlg, Buffer, "Your pick", MB_OK);
}
}
LBN_DBLCLK kommer når brugeren dobbelt klikker på en linie i listboxen.
For at få det til at virke skal man tilføje LBS_NOTIFY når man opretter listboxen:
CreateWindowEx(WS_EX_CLIENTEDGE,
"LISTBOX",
"0",
WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL | WS_HSCROLL | LBS_NOTIFY,
5, 65, 120, 80,
hwndDlg,
(HMENU )ResultListBoxId,
InstanceHandle,
0);