VC 快速枚舉系統所有字體。


int EnumFontFamiliesEx(
HDC hdc, // handle to DC
LPLOGFONT lpLogfont, // font information
FONTENUMPROC lpEnumFontFamExProc, // callback function
LPARAM lParam, // additional data
DWORD dwFlags // not used; must be 0
);

Combobox m_Combo;

INT CALLBACK NEnumFontNameProc(LOGFONT *plf, TEXTMETRIC* /*ptm*/, INT /*nFontType*/, LPARAM lParam)
{
CComboBox* comboBox = (CComboBox*) lParam;

comboBox->AddString(plf->lfFaceName);

return TRUE;
}

///////////////列舉本機所有字體
::EnumFontFamilies(GetDC()->m_hDC, (LPTSTR) NULL, (FONTENUMPROC)NEnumFontNameProc, (LPARAM)&(m_Combo));
int nCount = m_Combo.GetCount();
if (nCount > 0)
m_Combo.SetCurSel(nCount-5);
else
m_Combo.SetCurSel(0);

列舉系統字體並顯示。。。

簡單幾行就能實現了。。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM