Поиск:

Ответ в темуСоздание новой темы Создание опроса
> CDC* 
:(
    Опции темы
InsideYou
Дата 2.6.2008, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 25.5.2008

Репутация: нет
Всего: нет



Народ, пишется игрушка на MFC. Есть функция допустим void CKubView::OnLButtonUp(UINT nFlags, CPoint point)
И собственно в ней надо узнать сам CDC(идентификатор окна или как там его). Пишу CDC* hz; передаю в другую функцию и вылетает ошибка. Проверяю в дебаггере, в hz ничего нет вообще. Как можно описать этот CDC?

Заранее спасибо.
PM MAIL   Вверх
chaos
Дата 2.6.2008, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

Репутация: 4
Всего: 44



для начала - вопрос надо было и создавать в разделе МФЦ
GetDC нет подходит и методы Attach и Detach класса CDC ?

Добавлено через 1 минуту и 12 секунд
PS точно не помню и проверить не могу, но по моему у сласса CWnd есть мотод который возвращает CDC
PM WWW   Вверх
Andrey44
Дата 2.6.2008, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 12
Всего: 26



Пиши просто:
Код

CClientDC dc(this);

// или

CDC *dc = GetWindowDC();



--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
dizzy1984
Дата 2.6.2008, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 15.2.2007

Репутация: 10
Всего: 25



Для mfc это CWnd::GetDC(), для winapi ::GetDC(). После использования полученного значения его нужно, AFAIK, освободить с помощью соответствующей ReleaseDC()
PM MAIL   Вверх
InsideYou
Дата 2.6.2008, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 25.5.2008

Репутация: нет
Всего: нет



Цитата(Andrey44 @ 2.6.2008,  11:49)
Пиши просто:
Код

CClientDC dc(this);

// или

CDC *dc = GetWindowDC();



Спасибо тебе просто огромнейшее! Век буду обязанsmile

Добавлено через 9 минут и 51 секунду
И ещё вопросец, как очистить окошко? 
PM MAIL   Вверх
Andrey44
Дата 2.6.2008, 12:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 12
Всего: 26



Код

Invalidate(////);

Это если ты не рисуешь в OnPaint()

Или просто закрашивай окно каким нибудь цветом
Код

dc->FillSolidRect(RGB(0, 0, 0));//черный цвет



--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0639 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.