Главная arrow Программирование arrow PC arrow Visual Studio C++: как рисовать на окне MFC dialog-based программы Monday, March 20 2023  
ГлавнаяКонтактыАдминистрированиеПрограммированиеСсылки
UK-flag-ico.png English Version
GERMAN-flag-ico.png Die deutsche Version
map.gif карта сайта
нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Поделиться:

Visual Studio C++: как рисовать на окне MFC dialog-based программы Версия для печати
Написал microsin   
11.06.2009

Процесс по шагам (на примере класса диалогового окна CmyDlg).

1.
void CmyDlg::OnPaint()
{
 //рисуем черный кружок с закрашенной внутри областью белым цветом
 // (параметры пера и кисти по умолчанию)
 RECT ellipse;
 CPaintDC dc(this);
 ellipse.top  = 1;
 ellipse.left = 3;
 ellipse.bottom = 1+5;
 ellipse.right  = 3+5;
 dc.Ellipse(&ellipse);

 //рисуем квадратик с красным бордюром (сменим перо)
 // и зеленой закрашенной областью (сменим кисть)
 CPen aPen;
 aPen.CreatePen(PS_SOLID, 2, RGB(255, 0, 0));
 CPen *pOldPen = dc.SelectObject(&aPen);
 CBrush aBrush;
 aBrush.CreateSolidBrush(RGB(0, 255, 0));
 CBrush *pOldBrush = dc.SelectObject(&aBrush);
 dc.Rectangle(50,100,60,110);
 //восстанавливаем старые перо и кисть
 dc.SelectObject(pOldPen);
 dc.SelectObject(pOldBrush);
 ...
}

2. Чтобы принудительно перерисовать окно, нужно вызвать Invalidate().

Внимание! Вышеуказанное рисование работает только в методе OnPaint, к которому привязано сообщение WM_PAINT.

Последнее обновление ( 11.06.2009 )
 

Добавить комментарий

:D:lol::-);-)8):-|:-*:oops::sad::cry::o:-?:-x:eek::zzz:P:roll::sigh:

Защитный код
Обновить

< Пред.   След. >

Top of Page
 
microsin © 2023