В приложении необходимо использовать Listbox с цветами, отличными от стандартных.
Для указанных целей используется обработка сообщения WM_CTLCOLORLISTBOX стандартным образом.
case WM_CTLCOLORLISTBOX:
if ((HWND)lParam==hList) {
SetTextColor((HDC)wParam,RGB(255,255,255));
SetBkColor((HDC)wParam,RGB(0,0,0));
return (LRESULT)hBrush;
}
Сам Listbox создается следующим образом
hList=CreateWindow(TEXT("listbox"),NULL,WS_CHILD | WS_VISIBLE | WS_BORDER |
LBS_NOTIFY,20,30,150,200,hWnd,(HMENU)0,g_hInst,NULL);
Если главное окно приложения создано с помощью функции CreateWindow(), то раскрашенный Listbox отображается как нужно
Однако, приложение сделано на основе диалога, Listbox выглядит не надлежащим образом: фон, незанятый итемами, не закрашивается нужным цветом
Как решить такую проблему?
MinimalWindowProgram.ZIP
MinimalDlgProgramCPPPPC.zip