Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Янг Майкл Дж. -> "Visual С++ 6. Полное руководство: В 2 т.(том2)" -> 112

Visual С++ 6. Полное руководство: В 2 т.(том2) - Янг Майкл Дж.

Янг Майкл Дж. Visual С++ 6. Полное руководство: В 2 т.(том2) — Бином, 2006. — 530 c.
Скачать (прямая ссылка): vicualcc2006t2.djvu
Предыдущая << 1 .. 106 107 108 109 110 111 < 112 > 113 114 115 116 117 118 .. 173 >> Следующая

abs (m_Point01d.у - m_PointOrigin.у)) / 6; ClientDC.RoundRect (m_PointOrigin.x, m_PointOrigin.y,
m_Point01d.x, m_Point01d.y,
SizeRound, SizeRound); SizeRound = (abs (point.x - m_PointOrigin.x) +
abs (point.у - m_PointOrigin.у)) / 6; ClientDC.RoundRect (m_PointOrigin.x, m_PointOrigin.y,
point.x, point.y,
SizeRound, SizeRound);
break; }
case ID_TOOLS_CIRCLE: case ID_TOOLS_CIRCLEFILL:
ClientDC.Ellipse (m_PointOrigin.x, m_PointOrigin.y,
m_Point01d.x, m_Point01d.y); ClientDC.Ellipse (m_PointOrigin.x, m_PointOrigin.y, point.x, point.y);
break;
}
m_Point01d = point;
CScrollView::OnMouseMove(nFlags, point);
}
void CMiniDrawView::OnLButtonUp(UINT nFlags, CPoint point) (
// TODO: Здесь добавьте собственный код обработчика // и/или вызов стандартного обработчика
if (!m_Dragging) return;
m_ Dragging = 0;
: :ReleaseCapture ();
::ClipCursor (NULL);
CClientDC ClientDC (this);
OnPrepareDC (SClientDC);
ClientDC.DPtoLP (Spoint);
ClientDC.SetROP2 (R2_NGT);
ClientDC.SelectObject (Sm_PenDotted);
ClientDC.SetBkMode (TRANSPARENT);
ClientDC.SelectStockObject (NULL_BRUSH);
CMiniDrawApp *PApp = (CMiniDrawApp ""JAfxGetApp !); CFigure *PFigure;
switch (PApp->m_CurrentTool)
case ID_TOOLS_LINE:
ClientDC.MoveTo (m_PointOrigin); ClientDC.LineTo (m_PointCld); PFigure = new CLine
(m_PointOrigin.x, m_PointOrigin.y,
point.x, point.y,
PApp->m_CurrentColor,
PApp->m_CurrentThickness) ; break;
case IDJTOOLS RECTANGLE :
ClientDC. Rectangle (m_PointOrigin. x, ir_PomtOrigin. y,
m_Po.int01d.x, m_Point01d. y; ; PFigure - new CRectangle
(m_PointOrigin.x, m_PointOrigin.y, point.x, point.y, PApp->m_CurrentCoior, PApp->m_CurrentThickness) ; break;
case ID_TOOL s_ RE CT FILL:
ClientDC.Rectangle (m_PointOrigin.x, m_PointOrigin.y,
m_Point01d.x, ra_PointOId.y); PFigure = new CRectFill
(m_PointOrigin.x, m_PointOrigin.y, point.x, point.y, PApp->m_CurrentColor) ; break;
case ID_TOOLS_RECTROUND: \
int SizeRound = (abs (m_Point01d.x - m_PointOrigin.x) +
abs (m_Point01d. y - ra_Point0r.igin. y) ) / 6; ClientDC.RoundRect (ni_PointOrigin.x, m_Point0rigin.y,
m_Point01d.x, m_Point01d.y, SizeRound, SizeRound); PFigure = new CRectRound
(m__PointOrigin.x, m_PointOrigin.y, point.x, point.y, PApp->m_CurrentColor, PApp->m_CurrentThickness); break;
case ID_TOOLS_RECTROUNDFILL:
{
int SizeRound = (abs (m_Point01d.x - m_PointOrigin.x) +
abs (m_Point01d.y - m__PointOrigin . y) ) / 6; ClientDC.RoundRect (m_PointOrigin.x, m_PointOrigin.y, m_PointOld.x, m_Point01d.y, SizeRound, SizeRound); PFigure = new CRectRoundFill
(m_PointOrigin.x, m_PointOrigin.y, point.x, point.y, PApp->m_CurrentColor); break;
case ID_TOOLS_CIRCLE:
ClientDC.Ellipse (m_PointOrigin.x, m_PointOrigin.y,
m_Point01d.x, m_Point01d.y); PFigure = new CCircle
(m_PointOrigin.x, m_PointOrigin.y, point.x, point.y, PApp->m_CurrentColor, PApp->m_CurrentThickness) ; break;
case ID_TOOLS_CIRCLEFILL:
ClientDC.Ellipse (m_PointOrigin.x, m_PointOrigin.y,
m_Point01d.x, m_Point01d.y); PFigure = new CCircleFill
(m_PointOrigin.x, m_PointOrigin.y, point.x, point.y, PApp->m_CurrentColor); break;
ClientDC.SetR0P2 (R2_C0PYPEN); PFigure->Draw (sClientDC);
CMiniDrawDoc* PDoc = GetDocument() ; PDoc->AddFigure (PFigure);
PDoc->UpdateAllViews (this, 0, PFigure);
CScrollView::OnLButtonUp(nFlags, point);
}
void CMiniDrawView::OnlnitialUpdate() (
CScrollView::OnlnitialUpdate() ;
// TODO: Здесь добавьте собственный код обработчика // и/или вызов базового класса
SIZE Size = {DRAWWIDTH, DRAWHEIGHT}; SetScrollSizes (MM_TEXT, Size);
}
void CMiniDrawView::OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint) (
// TODO: Здесь добавьте собственный код обработчика // и/или вызов базового класса
if (pHint != 0)
{
CRect InvalidRect = ((CLine *)pHint)->GetDimRect ();
CClientDC ClientDC (this);
OnPrepareDC (SClientDC);
ClientDC.LPtoDP (slnvalidRect);
InvalidateRect (SlnvalidRect);
}
else
CScrollView::OnUpdate (pSender, lHint, pHint);
BOOL CMiniDrawView::OnPreparePrinting(CPrintlnfo* plnfo) (
// TODO: Здесь добавьте собственный код обработчика // и/или вызов базового класса
return DoPreparePrinting (plnfo);
)
void CMiniDrawView::OnBeginPrinting(CDC* pDC, CPrintlnfo* plnfo)
{
// TODO: Здесь добавьте собственный код обработчика // и/или вызов базового класса
m_PageHeight = pDC->GetDeviceCaps (VERTRES); m_PageWidth = pDC->GetDeviceCaps (HORZRES);
m_NumRows = DRAWHEIGHT / m_PageHeight + (DRAWHEIGHT % m_PageHeight > 0); m_NumCols = DRAWWIDTH / m_PageWidth + (DRAWWIDTH % m_PageWidth > 0) ; pInfo->SetMinPage (1);
pInfo->SetMaxPage (m_NumRows * m_NumCols);
CScrollView::OnBeginPrinting(pDC, plnfo);
)
void CMiniDrawView::OnPrepareDC(CDC* pDC, CPrintlnfo* plnfo) {
// TODO: Здесь добавьте собственный код обработчика // и/или вызов базового класса
CScrollView: .-OnPrepareDC (pDC, plnfo) ;
if (plnfo == NULL) return;
int CurRow = pInfo->m_nCurPage / m_NumCols +
(pInfo->m__nCurPage % m_NumCols > 0); int CurCol = (pInfo->m_nCurPage - 1) % m_NumCols + 1;
Предыдущая << 1 .. 106 107 108 109 110 111 < 112 > 113 114 115 116 117 118 .. 173 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100