2012-02-10 21:23:45|?次阅读|上传:wustguangh【已有?条评论】发表评论
关键词:C/C++, 界面设计|来源:唯设编程网
Windows提供了多种与设备无关的不同尺寸的字体。有效地使用这些Windows字体,不用在编程时下很大功夫,就可以明显地增强各种应用程序的功能。字体是Windows GDI必要的组成部分,这意味字体的使用与其他GDI对象一样。它们可以缩放和剪切,可以像选取画笔或者画刷一样选取设备环境。所有关于撤消选中和删除的GDI规则都适用于字体。
字体由CFont类进行管理,创建CFont类必须使用CFont类的成员函数,这点与CPen和CBrush有所不同。
CFont *OldFont,NewFont; LOGFONT MyFont={30, 10, 0, 0, 0, 1, 1, 0 ,ANSI_CHARSET ,OUT_DEFAULT_PRECIS ,CLIP_DEFAULT_PRECIS ,DEFAULT_QUALITY ,DEFAULT_PITCH ,"黑体"}; pDC->TextOut(0,10,"创建字体的几种方法:"); switch(i) { case 1: //使用函数CreatPointFont()创建字体 NewFont.CreatePointFont(200,"宋体",NULL); break; case 2: //使用函数CreateFontIndirect()创建字体 NewFont.CreateFontIndirect(&MyFont); break; case 3: //使用函数CreateFont()创建字体 NewFont.CreateFont(30,10,0,0,FW_HEAVY,false,false, true,ANSI_CHARSET,OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY, DEFAULT_PITCH|FF_DONTCARE,"大号字"); break; case 4: //使用库存字体对象创建字体 pDC->SelectStockObject(ANSI_FIXED_FONT); break; } OldFont=pDC->SelectObject(&NewFont); pDC->TextOut(0,60*i,outstr[i]); pDC->SelectObject(OldFont); NewFont.DeleteObject();