Я обрабатывать WM_CTLCOLORSTATIC сообщение, чтобы сделать прозрачный фон для статического управления:Как перерисовать статический контроль при изменении текста?
case WM_CTLCOLORSTATIC:
{
SetTextColor((HDC)wParam,RGB(0,0,0));
SetBkMode((HDC)wParam,TRANSPARENT);
HBRUSH return_bush = (HBRUSH)GetStockObject(NULL_BRUSH);
return (LRESULT)return_brush;
}
Это прекрасно работает. И теперь я пытаюсь изменить текст для статического контроля, вызвав SendMessage(). Но в результате новый текст помещается поверх существующего текста. Я думаю, что нужно перекрасить статический контроль. Как перекрасить статический контроль? Как это сделать?
Спасибо, но куда вставить этот код ?: RECT rect; HWND hctrl; hctrl = GetDlgItem (hwnd, ControlID); GetClientRect (hctrl, &rect); MapWindowPoints (hctrl, HWND (POINT *) и прямоугольник, 2); InvalidateRect (HWND, и Прямоугольник, TRUE); какое сообщение WM обрабатывать –
вставить код, где вы изменить текст из? статический контроль (после SendMessage) – manuell
Пожалуйста, сообщите нам, если это сработает для вас, сейчас – manuell