![]() |
|
|
![]()
|
|
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 4 Всего: 56 |
почитал похожие топики, ничем не помогло..
проблема : рисую свою кнопку, фон у окна картинка с градиентной заливкой, поэтому задний фон у кнопки поставить не могу(всегда разный будет), рисую в памяти потом кидаю BitBlt'ом, так вот вопрос как мне у битмапа в памяти сделать фон как у картинки, причем чтобы этот фон менялся в зависимости от положения кнопки на окне, надеюсь понятно изьяснился |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 5 Всего: 98 |
не совсем понятно...
т.е. ты хочеш иметь битмап картинки "под кнопкой"? -- тогда самый простой способ (AFAIK) -- сделать функцию, принимающую этот битмап от парента (в OnEraseBkgnd сохраняй фон и передавай его) -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 4 Всего: 56 |
попробую объяснит яснее, битмап в памяти имеет прямоугольную форму, а я допустим рисую круглую кнопку, так вот круглая кнопка занимает не весь битмап, а только его часть, так вот мне нужно, чтобы часть битмапа которая к кнопке отношения не имеет была цвета заднего фона..
|
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 5 Всего: 98 |
ну так делай как я сказал, а rect == описанному вокруг кнопки прямоугольнику...
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 4 Всего: 56 |
т.е мне сохранить кусок фона, на который ложится кнопка, а потом запихать ее в битмап?? я правильно понял?? если правильно то возникает вопрос, как сохранить этот кусок фона..??
|
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 5 Всего: 98 |
правильно.
сохранять примерно так:
(_background -- член класса типа HBITMAP). предок вызывает эту функцию в самом конце OnEraseBkgnd() (когда весь фон гарантированно отрисован) -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 4 Всего: 56 |
_hunter, спасибо, попробую отпишусь
|
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 4 Всего: 56 |
_hunter, создал эту ф-ию она у меня член класса кнопки, но она не вызывается, т.е никогда в нее не заходит, почему такое может быть??, может я че не так понял..да и в MSDN такой ф-ии не нашел..
|
|||
|
||||
| FelikZ |
|
|||
![]() Старый Маразматик ![]() ![]() Профиль Группа: Участник Сообщений: 380 Регистрация: 1.12.2006 Где: Vault 13 Репутация: нет Всего: 5 |
OnEraseBkgnd() - определил?
-------------------- ![]() |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 4 Всего: 56 |
да и оставил, его пустым
|
|||
|
||||
| FelikZ |
|
|||
![]() Старый Маразматик ![]() ![]() Профиль Группа: Участник Сообщений: 380 Регистрация: 1.12.2006 Где: Vault 13 Репутация: нет Всего: 5 |
имелось ввиду что "CCustomPicture::SaveBackground" вызывается в конце тобою определенной ф-и OnEraseBkgnd() . Это сообщение отредактировал(а) FelikZ - 11.2.2007, 17:25 -------------------- ![]() |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 4 Всего: 56 |
FelikZ, спасибо, и последний вопрос как мне этот битмап теперь нарисовать в памяти?? BitBlt?? как??
|
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 4 Всего: 56 |
нарисовал через DrawState, всем спасибо за помощь!
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |