Вторая проблема, связанная с затиранием фона...
От: kirina  
Дата: 25.03.02 16:45
Оценка:
Проблема в том, что после заливки (уставновки цвета фона
hdc=BeginPaint(Win,&pc);
GetClientRect(Win,&rect);
SetBkColor(hdc,RGB(100,100,0));
ExtTextOut(hdc,0,0,ETO_OPAQUE,&rect,NULL,0,NULL);)
любой элемент (текст) будь то static text или Group Box
выводится по серому фону, хотя цвет фона уже установлен другим.
Как это исправить?
Re: Вторая проблема, связанная с затиранием фона...
От: retalik www.airbandits.com/
Дата: 26.03.02 04:40
Оценка:
Здравствуйте kirina, Вы писали:

K>Проблема в том, что после заливки (уставновки цвета фона

K>hdc=BeginPaint(Win,&pc);
K>GetClientRect(Win,&rect);
K>SetBkColor(hdc,RGB(100,100,0));
K>ExtTextOut(hdc,0,0,ETO_OPAQUE,&rect,NULL,0,NULL)
K>любой элемент (текст) будь то static text или Group Box
K>выводится по серому фону, хотя цвет фона уже установлен другим.
K>Как это исправить?
Ни static, ни Group Box не умеют рисовать себя прозрачно. Просто все стандартные контролы полностью отвечают за отрисовку занимаемой области. Чтобы они были прозрачными, нужно их рисовать самостоятельно (обрабатывать WM_CTLCOLORSTATIC или вообще WM_PAINT).
Успехов,
Виталий.
Re: Вторая проблема, связанная с затиранием фона...
От: Gambler  
Дата: 26.03.02 10:27
Оценка:
Здравствуйте kirina, Вы писали:

K>Проблема в том, что после заливки (уставновки цвета фона

K>hdc=BeginPaint(Win,&pc);
K>GetClientRect(Win,&rect);
K>SetBkColor(hdc,RGB(100,100,0));
K>ExtTextOut(hdc,0,0,ETO_OPAQUE,&rect,NULL,0,NULL)
K>любой элемент (текст) будь то static text или Group Box
K>выводится по серому фону, хотя цвет фона уже установлен другим.
K>Как это исправить?

Лови в родительском окне, для твоего контрола, WM_CTLCOLORSTATIC для STATIC, для других контролов свои сообщения — в MSDN подробно описано какие именно и как их обрабатывать.

Platform SDK: Windows User Interface
-------------------------------------------------------------------

Вызывает презедент к себе коров и говорит:
— Ну, что будем сдавать, молоко или мясо?
(с) Г. Явлинский TV6 — Герой дня (18.04.2002)
Re[2]: Вторая проблема, связанная с затиранием фона...
От: Юнусов Булат Россия  
Дата: 26.03.02 10:44
Оценка:
Здравствуйте Gambler, Вы писали:
Речь про что то такое?
http://rsdn.ru/forum/message.asp?mid=29166
Автор: Юнусов Булат
Дата: 15.02.02
Re[3]: Вторая проблема, связанная с затиранием фона...
От: Юнусов Булат Россия  
Дата: 26.03.02 10:51
Оценка:
Здравствуйте Юнусов Булат, Вы писали:

ЮБ>Здравствуйте Gambler, Вы писали:

ЮБ>Речь про что то такое?
ЮБ>http://rsdn.ru/forum/message.asp?mid=29166
Автор: Юнусов Булат
Дата: 15.02.02

Ой это же винапи форум, сорри
но идея таже — для всего диалога обработать WM_CTLCOLOR
Re[3]: Вторая проблема, связанная с затиранием фона...
От: Gambler  
Дата: 26.03.02 10:52
Оценка:
Здравствуйте Юнусов Булат, Вы писали:

ЮБ>Здравствуйте Gambler, Вы писали:

ЮБ>Речь про что то такое?
ЮБ>http://rsdn.ru/forum/message.asp?mid=29166
Автор: Юнусов Булат
Дата: 15.02.02


я не совсем понял ваш вопрос, но ссылка повествует о том, что я имел ввиду.
-------------------------------------------------------------------

Вызывает презедент к себе коров и говорит:
— Ну, что будем сдавать, молоко или мясо?
(с) Г. Явлинский TV6 — Герой дня (18.04.2002)
Re[4]: Вторая проблема, связанная с затиранием фона...
От: Юнусов Булат Россия  
Дата: 26.03.02 10:57
Оценка:
Здравствуйте Gambler, Вы писали:

G>Здравствуйте Юнусов Булат, Вы писали:


ЮБ>>Здравствуйте Gambler, Вы писали:

ЮБ>>Речь про что то такое?
ЮБ>>http://rsdn.ru/forum/message.asp?mid=29166
Автор: Юнусов Булат
Дата: 15.02.02


G>я не совсем понял ваш вопрос, но ссылка повествует о том, что я имел ввиду.

Не спорю, хотел немножко кода добавить — не посмотрел что форум винапишный, впрочем это не так страшно
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.