获取桌面图标字体和系统右键菜单字体

需求:
1、显示的文字字体和桌面图标一样
2、显示的文字字体和系统右键菜单的一样


说白了就是要取到系统字体设置中的对应字体:

获取桌面图标字体和系统右键菜单字体_第1张图片

实现:
找来找去,结果答案一直在眼皮底下。

 

<textarea cols="50" rows="15" name="code" class="cpp">// 取系统桌面图标字体 CFont m_fontIcon; LOGFONT logFont; ZeroMemory ((PVOID) &amp;logFont,sizeof (LOGFONT)); ICONMETRICS im; im.cbSize = sizeof (ICONMETRICS); SystemParametersInfo (SPI_GETICONMETRICS,im.cbSize,&amp;im,0); logFont = im.lfFont; m_fontIcon.CreateFontIndirect (&amp;logFont);</textarea>

 

<textarea cols="50" rows="15" name="code" class="cpp"> // 取系统右键菜单的字体 CFont m_fontMenu; LOGFONT logFont; ZeroMemory ((PVOID) &amp;logFont,sizeof (LOGFONT)); NONCLIENTMETRICS nm; nm.cbSize = sizeof (NONCLIENTMETRICS); SystemParametersInfo (SPI_GETNONCLIENTMETRICS,nm.cbSize,&amp;nm,0); logFont = nm.lfMenuFont; m_fontMenu.CreateFontIndirect (&amp;logFont); ICONMETRICS im; im.cbSize = sizeof (ICONMETRICS); SystemParametersInfo (SPI_GETICONMETRICS,im.cbSize,&amp;im,0); logFont = im.lfFont;</textarea>

 

--The End--

你可能感兴趣的:(获取桌面图标字体和系统右键菜单字体)