设置窗口字体,创建字体CreateFont函数

发布时间:2016年4月21日 作者:未知 查看次数:1256


创建字体CreateFont函数原形,执行成功则返回逻辑字体的句柄HFONT,零表示失败。
 
HFONT CreateFont(
 int nHeight,          //字体的高度
 int nWidth,           //字体的宽度
 int nEscapement,      //字体显示的角度
 int nOrientation,     //字体的角度
 int nWeight,          //字体的磅数
 BYTE bItalic,         //斜体字体
 BYTE bUnderline,      //带下划线的字体
 BYTE cStrikeOut,      //带删除线的字体
 BYTE nCharSet,        //所需的字符集
 BYTE nOutPrecision,   //输出的精度
 BYTE nClipPrecision,  //裁减的精度
 BYTE nQuality,        //逻辑字体与输出设备的实际字体之间的精度
 BYTE nPitchAndFamily,  //字体间距和字体集
 LPCTSTR lpszFacename  //字体名称
);

注:
nCharSet字符集。可以使用以下预定义的值:
ANSI_CHARSET
BALTIC_CHARSET
CHINESEBIG5_CHARSET
DEFAULT_CHARSET
EASTEUROPE_CHARSET
GB2312_CHARSET
GREEK_CHARSET
HANGUL_CHARSET
MAC_CHARSET
OEM_CHARSET
RUSSIAN_CHARSET
SHIFTJIS_CHARSET
SYMBOL_CHARSET
TURKISH_CHARSET
VIETNAMESE_CHARSET

其中,OEM_CHARSET 表示字符集依赖本地操作系统。
DEFAULT_CHARSET 表示字符集基于本地操作系统。例如,系统位置是 English (United States),字符集将设置为 ANSI_CHARSET。

=======================================================

一、设置HDC字体
HFONT hFont;
HDC hDC;
hFont=CreateFont(10,10,0,0,FW_BOLD,false,false,false,DEFAULT_CHARSET,OUT_CHARACTER_PRECIS,CLIP_CHARACTER_PRECIS,DEFAULT_QUALITY,FF_MODERN,"新宋体");
SelectObject(hDC,hFont);

二、设置控件字体
vc CreateWindow创建窗口控件及设置字体
HWND hBtn, hEdit;
hBtn = CreateWindow(   //按钮创建
 "button",
 "创建的按钮",
 WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON|BS_CENTER|BS_VCENTER,
 100,100,90,28,
 hWnd,
 NULL,
 AfxGetInstanceHandle(),
 0);

hEdit = CreateWindow(   //edit控件
 "edit",
 "create",
 WS_VISIBLE|WS_CHILD|WS_BORDER/*|DT_CENTER*/|DT_VCENTER,
 100,70,100,25,
 hWnd,
 NULL,
 NULL,
 NULL);

HFONT hFont = (HFONT)GetStockObject(DEFAULT_GUI_FONT);
::SendMessage(hEdit,WM_SETFONT,(WPARAM)hFont,1);  //设置控件字体
::SendMessage(hBtn,WM_SETFONT,(WPARAM)hFont,1);

 



版权所有!www.sieye.cn
E.Mail:sieye@sohu.com QQ:66697110