cclientdc

vc++ mfc 剪贴板操作教程

12-26
本文主要介绍了VC++/MFC中如下内容的剪贴板操作: 1.文本内容的操作 2.WMF数据的操作 3.位图的操作 4.设置使用自定义格式 5.感知剪贴板内容的改变 6.自动将数据粘贴到另一应用程序窗口 一.文本内容的操作 下面的代码示范了如何将文本内容复制到剪贴板(Unicode编码的先转化为ASCII): CString source; //文本内容保存在source变量中 if( OpenClipboard() ) { HGLOBAL clipbuffer; char * buffer; E

VC中特殊字体的实现方法讲解

06-29
渐变字: // 获得窗口的客户区设备上下文句柄 CClientDC dc(this): // 更改当前字体 LOGFONT lf: dc.GetCurrentFont()->GetLogFont(lf): CFont font, *pOldFont: lf.lfCharSet=134: lf.lfHeight=-150: lf.lfWidth=0: strcpy(lf.lfFaceName, "隶书"): font.CreateFontIndirect(lf): pOldFont

VC中利用MFC设计绘图程序初步

04-22
首先我们说下通过鼠标的移动来绘制直线. 这里要捕获到鼠标的两个消息: WM_LBUTTONDOWN, WM_LBUTTONUP.响应WM_LBUTTONDOWN消息记录直线的起始点,响应 WM_LBUTTONUP消息记录直线的终点并绘制直线. 好了,我们看看怎么响应. void CDrawView::OnLButtonDown(UINT nFlags, CPoint point) { //MessageBox("Left Button Clicks DrawView"); m_ptOr

位图的淡入淡出显示

02-26
我们经常在AboutBox中显示一幅关于公司或自己讯息的位图,有没有想过让这幅位图有更酷的效果?比如加上淡入淡出效果?只要有了这个CAlphaCtrl控件就可以轻松实现. CAlphaCtrl是从CStatic继承而来.使用时只要把CalphaCtrl加入窗体,然后调用LoadAlphaBitmap(UINT uID, int iTimer)函数就可以实现位图的淡入淡出.其中uID是位图的资源ID,iTimer是位图显示时间间隔,值愈小显示愈快. 下面就来说一说CalphaCtrl是如何实现的.

MFC绘图1--使用不同DC

01-23
//使用HDC绘图 /* 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); */ //所有跟窗口相关的操作都被封装在CWnd类中 //所有跟绘图相关的操作都被封装在CDC类中 //使用CDC绘图 /* CDC *pDC=CWnd::GetDC(); //此处直接使用CWnd类的GetDC,

MFC绘图4--使用位图画刷

01-23
CClientDC dc(this); //CBitmap对象必须在构造完成后,调用其成员函数 //进行初始化,例如:LoadBitmap() CBitmap bitmap; bitmap.LoadBitmap(IDB_BITMAP1); CBrush brush(&bitmap); dc.FillRect(CRect(m_ptOrigin,point),&brush);

MFC绘图3--使用普通画刷

01-23
//使用普通画刷 CClientDC dc(this); CBrush brush(RGB(255,0,0)); dc.FillRect(CRect(m_ptOrigin,point),&brush);