![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос про STATIC
Василий Петрович © (2003-05-05 21:26:00)Привет!
Я делал у статика прозрачный фон:
WM_CTLCOLORSTATIC : Begin
SetBkMode(Wparam,TRANSPARENT);
SetTextColor(wparam,rgb(255,255,255));
end;
все получилось. только если теперь назначать статику другой текст, СТАРЫЙ текст не стирается, т.е. новый текст пишется ПОВЕРХ старого. В чем проблема у меня?
nikkie (2003-05-06 23:03:00) [1]примерчики можно обсуждать, когда ты хелп прочтешь и попробуешь эту функцию хотя бы вызвать...
>Мне вообще то можно и не делать прозрачным фон, можно просто другим цветом
ну если тебе так немного надо...
Result:=GetStockObject(BLACK_BRUSH);
Василий Петрович (2003-05-06 22:54:00) [2]Хм... можно примерчик...
Мне вообще то можно и не делать прозрачным фон, можно просто другим цветом, если мне это поможет.
nikkie (2003-05-06 21:46:00) [3]Selecting a NULL_PEN or NULL_BRUSH into the device context tells GDI not to modify the normally affected areas. In short, "NULL_" objects do not draw anything.
ок, понятно. NULL_BRUSH тебе нужен, чтобы не затереть фон. но это имеет побочный эффект - не стирается старый текст. попробуй сразу после изменения текста сделать RedrawWindow для parent window, указав в качестве второго параметра прямоугольник твоего STATIC.
Василий Петрович (2003-05-06 21:35:00) [4]WM_CTLCOLORSTATIC :
Begin
SetBkMode(Wparam,TRANSPARENT);
SetTextColor(wparam,rgb(255,255,255));
Result:=GetStockObject(Null_Brush);
end;
nikkie (2003-05-06 20:10:00) [5]WM_CTLCOLORSTATIC
If an application processes this message, the return value is a handle to a brush that the system uses to paint the background of the static control.
а что ты возвращаешь?
Василий Петрович (2003-05-06 19:56:00) [6]неужели никто не поможет?