DC使用入门
来源:互联网 发布:python string转list 编辑:程序博客网 时间:2024/06/06 12:30
本示例在View中 :
void CDrawView::OnLButtonUp(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
//方式1:
HDC hdc;
hdc=::GetDC(m_hWnd);
MoveToEx(hdc,m_ptOrigin.x,m_ptOrigin.y,NULL);
LineTo(hdc,point.x,point.y);
::ReleaseDC(m_hWnd,hdc);: //释放DC
//方式2:
CDC *pDC=GetDC();
pDC->MoveTo(m_ptOrigin);
pDC->LineTo(point);
ReleaseDC(pDC); //释放DC
//方式3:
CClientDC dc(this);
//CClientDC dc(GetParent()); //获得父窗口(Frame)DC
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
//方式4:
CWindowDC dc(this);
//CWindowDC dc(GetParent()); //父窗口DC
//CWindowDC dc(GetDesktopWindow()); //桌面DC
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
CPen pen(PS_DOT,1,RGB(0,255,0)); //创建画笔
CClientDC dc(this);
CPen *pOldPen=dc.SelectObject(&pen);
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
dc.SelectObject(pOldPen);
CBrush brush(RGB(255,0,0)); //创建红色画刷
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1);
CBrush brush(&bitmap); //创建位图画刷
CClientDC dc(this);
dc.FillRect(CRect(m_ptOrigin,point),&brush); //画刷填充矩形区域
//创建透明画刷
CBrush *pBrush=CBrush::FromHandle((HBRUSH)GetStockObject(NULL_BRUSH));
CBrush *pOldBrush=dc.SelectObject(pBrush); //选入DC
dc.Rectangle(CRect(m_ptOrigin,point));
dc.SelectObject(pOldBrush); //返回原画刷
CView::OnLButtonUp(nFlags, point);
}
阅读全文
0 0
- DC使用入门
- 使用DC
- 使用Memory DC
- 各种DC的使用
- 如何使用Memory DC
- MFC绘图--使用不同DC
- MFC绘图--使用不同DC
- DC
- DC
- DC
- DC
- DC
- DC
- dc
- DC
- dc
- DC
- DC
- 文本编程:模仿记事本
- PHP文件操作
- CodeForces-698A Vacations(水题)
- 路径层
- Activity的退出应用程序
- DC使用入门
- 关于linux上安装nginx服务器,win10中IE不能访问,谷歌可以访问的问题
- U盘中毒后,手把手教你恢复文件
- Android ViewPager切换动画PageTransformer
- QT日常代码三
- shell 脚本为php 执行订单过期接口
- 界面加载位图
- Linux关于时间同步命令
- [leetcode]312. Burst Balloons