// Get a CDC for the image CDC* pDC = CDC::FromHandle(m_myImage.GetDC()); // Use pDC here pDC->Rectangle(0, 40, 100, 50); m_myImage.ReleaseDC(); 当在MFC项目时使用 CImage,请注意在项目中哪些成员函数需要指向 CBitmap 对象。如果要使用这样的功能的 CImage,如 CMenu::AppendMenu,使用...
如上所述,CDC类几乎封装了所有的Windows GDI函数,另外,MFC中还有几个由CDC类派生的子类,包括CWindowDC、CPaintDC、CClientDC、CMetaFileDC,它们用来进行一些特定的绘图操作。 一般我们在使用完CDC对象后要记得删除它,否则会有内存泄露。很多情况下我们可以调用CWnd::GetDC()函数来获取设备上下文指针,即CDC指针,这个时候记...
在View的其他地方,用了GetDC就要用ReleaseDC,不过不建议在其他地方绘制,一刷新,就都没了。
·获取几种设备上下文,管理窗口的几种方法 GetDC //管理整个窗口的客户区 //客户区坐标系 GetWindowDC //管理整个窗口(包括非客户区——标题栏) //非客户区坐标系 GetDC(NULL) //管理整个桌面 //屏幕坐标系 ·获取窗口中的几种矩形区域的方法 GetClientRect //获得窗口的客户区矩形区域 GetWindowRect //获得...
一、CPaintDC Mfc自动生成的OnPaint函数都会定义一个CPaintDC类型的变量。如:[cpp] view plain copy void CXXXXXX::OnPaint(){ CPaintDC dc(this); // device context for painting // TODO: Add your message handler code here // Do not call CView::OnPaint() for painting messages } /...
CPoint无法直接变成HDC 可以先获取point所处的窗口, 再获取该窗口的HDC WindowFromPoint( );GetDC( )->m_hDC;
HDC是API里的一个数据类型,是DC的句柄。 CDC是MFC中对DC相关数据及函数的一个封装的类。 HDC与CDC的关系 就如同HWND与CWnd的关系; 三、绘制矩形 1、//API绘制 BOOLRectangle( HDC hdc, // 设备描述表句柄 (指定一个用于绘图的地方) int nLeftRect, / /矩形的左上角X坐标 ...
CImage是MFC和ATL共享的新类,它能从外部磁盘中调入一个JPEG、GIF、BMP和PNG格式的图像文件加以显示,而且这些文件格式可以相互转换。 CImage提供增强型的(DDB和DIB)位图支持,可以装入、显示、转换和保存多种格式的图像文件,包括BMP、GIF、JPG、PNG、TIF等。CImage是一个独立的类,没有基类。(CImage类是基于GDI+的...
// Get a CDC for the image CDC* pDC = CDC::FromHandle(m_myImage.GetDC()); // Use pDC here pDC->Rectangle(0, 40, 100, 50); m_myImage.ReleaseDC(); 在MFC 项目中使用 CImage 时,请注意项目中哪些成员函数需要指向 CBitmap 对象的指针。 如果要CImage与此类函数一起使用,例如CMenu::Appe...