Создаю вот такой combobox: CBS_DROPDOWNLIST | CBS_HASSTRINGS |
CBS_OWNERDRAWFIXED | WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP.
При отрисовки итемов при определённых условиях к тексту итема добавляется ещё кое-какой текст и далее следует DrawText. (то есть фактически текст самого итема не меняется). Иногда в тот момент когда выпадающий список находится в состоянии DROPPED условия поменялись, и нужно его перерисовать, как это сделать?
Пробывал:
UpdateWindow(hCombo);
InvalidateRect(hCombo, nil, True);
RedrawWindow(hCombo, nil, 0, RDW_ERASENOW or RDW_FRAME or RDW_INVALIDATE or RDW_UPDATENOW or RDW_ERASE or RDW_ALLCHILDREN);
SendMessage(hCombo, WM_SETREDRAW, 0, 0);
SendMessage(hCombo, WM_SETREDRAW, 1, 0);
Вобщем нужно перерисовать и комбобокс и его список(если дроппед).
---
WinXP/Win7 Delphi7.