CPaintDC 无效区dc,相当于BeginPaint, EndPaint CClientDC 客户区dc,相当于GetDC, ReleaseDC CWindowDC 整窗口dc, 相当于GetWindowDC, ReleaseDC CDC 任何dc, 相当于CreateDC, DeleteDC 4.获得CDC * CDC* pDC pDC=GetDC(); 获得hdc HDC hDC; hDC=GetDC(pCxp->hWnd); pDC->m_hDC; MEMDCXP Mdcxp; GetMem...
1 CPaintDC类 (1)CPaintDC类是CDC类的一个派生类,该类一般用在响应WM_PAINT消息的函数OnPaint()中。 (2)WM_PAINT消息是当窗口的某个区域需要重画时激发的窗口消息。当程序中的消息循环接到WM_PAINT消息时就自动调用消息处理函数OnPaint(),如果在OnPaint函数内定义了CPaintDC类的对象,通过这个类对象就可以使用CDC...
用法是:CClientDC dc(this);//this一般指向本窗口或当前活动视图dc.TextOut(10,10,str,str.GetLength());//利用dc输出文本,如果是在CScrollView中使用,还要注意调用OnPrepareDC(&dc)调整设备上下文的坐标。CPaintDC用于响应窗口重绘消息(WM_PAINT)时的绘图输出。CPaintDC在构造函数中调用BeginPaint()取得设备上下文,在...
方法一: 在OnPaint函数的else下添加4行代码: else { CRect rect; CPaintDC dc(this); GetClientRect(rect); dc.FillSolidRect(rect, RGB(217,236,106)); //背景色就在这里~ CDialog::OnPaint(); } 得到的效果:窗体背景上色,任何控件都不上色,包括编辑框。如图: 方法二: ... 查看原文 MFC Tab背景...
CPaintDC dc(this); // 用于绘制的设备上下文 SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0); // 使图标在工作区矩形中居中 int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon = GetSystemMetrics(SM_CYICON); ...
CPaintDC dc(this); // 用于绘制的设备上下文 SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0); // 使图标在工作区矩形中居中 int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon = GetSystemMetrics(SM_CYICON); ...
hMemDC = CreateCompatibleDC(hScrDC); // 获得选定区域坐标 nX = lpRect->left; nY = lpRect->top; nX2 = lpRect->right; nY2 = lpRect->bottom; // 获得屏幕分辨率 xScrn = GetDeviceCaps(hScrDC, HORZRES); yScrn = GetDeviceCaps(hScrDC, VERTRES); ...
如果是MFC下.则用CpaIntDc 传入this即可. 三丶CClientDc用法 CClientDc则是可以不用再OnPaint中使用.我们可以按钮点击就使用了. 代码语言:javascript 复制 voidCCDCDlg::OnBnClickedButton1(){CClientDCdc(this);dc.Ellipse(0,0,100,100);画个圆} 上方代码则是我们在客户区画个圆. 在我们点击之后. ...
CPaintDC dc(this); OnPreparDC(&dc); OnDraw(&dc); //呼叫了OnDraw } OnPaint最後也要呼叫OnDraw,因此我們一般會在OnDraw函式中進行繪製。 void CMyView::OnDraw( CDC* pDC ) { CMyDoc* pDoc = GetDocument(); CString s = pDoc->GetData(); // Returns a CString ...
CPaintDCdc(this);CRectrect;GetClientRect(&rect);dc.DrawText("HelloMFC",-1,&rect,DT_SINGLELINE|DT_CENTER|DT_VCENTER);}CWinApp是应用程序类,在MFC应用程序中必须从这个类派生出一个类,该派生类是MFC应用程序的入口必须定义这个派生类的对象,并且只能有一个这个对象代表整个应用程序。