![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| pee100n |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 28.3.2007 Репутация: нет Всего: нет |
заранее прошу прощения за глупый вопрос...
создаю виртуальное окно в InitInstance:
где mem_DC,mem_BMP,m_brush и m_pen - глобальные в обработчике WM_PAINT соотвественно:
внимение вопрос!: почему когда ставлю пиксел на mem_DC: SetPixelV(mem_DC,100,100,255); он не красный как ожидается, а черный? з.ы.: пиксел ставлю по нажатию кнопки на диалоге |
||||
|
|||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 33 Всего: 183 |
Что за странный код? Создаем пустой битмап (кстати, никто не гарантировал, что тебе его всегда чистить будут). Делаем из него кисть. Ею же красим бимап, из которого только что сделали кисть... В чем смысл? Ты хочешь черным залить контекст? И зачем выбирать перо, если ты SetPixel используешь? А насчет вопроса - после изменения подложки Invalidate вызываешь? -------------------- ... |
|||
|
||||
| pee100n |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 28.3.2007 Репутация: нет Всего: нет |
черным контекст я не хочу заливать потому и делаю вышеописсаные действия:
а перо я брал чтобы проверить еще и LineTo с цветом, но его так и нету.
да, вызываю ( |
||||
|
|||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 33 Всего: 183 |
А что хочешь? Говорю же, бессмысленный код: ты закрашиваешь подложку ею же самой... Только что заметила: ты создаешь CompatibleBitmap по мемори-контексту, а у него в этот момент выбран монохромный битмап. Так что, скорее всего, получаешь тоже монохромный. Передавай в CreateCompatibleBitmap контекст окна. Кроме того, то, что получаешь GetDC, нужно запомнить - потом полагается сделать ReleaseDC. -------------------- ... |
|||
|
||||
| pee100n |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 28.3.2007 Репутация: нет Всего: нет |
да не, все верно. это я все делаю, чтобы сохранять изображение на окне, то есть когда его закроют другим окном, а потом снова откроют - я восстанавливаю изображение нарисованое на окне.
а насчет монохромного битмапа - спасибо! передал туда ДЦ окна и все зарабоатло ) |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 33 Всего: 183 |
pee100n, рада, что получилось.
Опять посмотрела внимательнее: 1) ты битмап в контекст дважды выбираешь... (а мне казалось, что ты выбираешь кисть, ну да ладно) 2) по сути ты заполняешь подложку кистью, установленной по умолчанию (видимо, WHITE_BRUSH). Лучше все-таки явно ее выбрать, чтобы намерения декларировать. Или просто вместо PaTCOPY писать WHITENESS. 3) все равно не понимаю, какое отношение твой код насчет CreatePatternBrush имеет к указанной задаче. ты создаешь кисть по пустому битмапу (черт его знает, что там внутри). С изменением битмапа кисть вовсе не изменяется... -------------------- ... |
|||
|
||||
| pee100n |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 28.3.2007 Репутация: нет Всего: нет |
короче говоря, проблема заключалась в CreateCompatibleBitmap в который передавался совместимый хдц, а не оконный,и эта ф-ция и создавала монохромный битмап, а не цветной. Это сообщение отредактировал(а) pee100n - 3.4.2007, 22:41 |
||||||
|
|||||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |