共用方式為


CFontHolder 類別

實作內建字型屬性,並封裝 Windows 字型物件和 IFont 介面的功能。

語法

class CFontHolder

成員

公用建構函式

名稱 描述
CFontHolder::CFontHolder 建構 CFontHolder 物件。

公用方法

名稱 描述
CFontHolder::GetDisplayString 擷取容器屬性瀏覽器中顯示的字串。
CFontHolder::GetFontDispatch 傳回字型的 IDispatch 介面。
CFontHolder::GetFontHandle 傳回 Windows 字型的控制碼。
CFontHolder::InitializeFont CFontHolder初始化 物件。
CFontHolder::QueryTextMetrics 擷取相關字型的資訊。
CFontHolder::ReleaseFont 中斷 CFontHolder 物件與 和 IFontNotification 介面的連接 IFont
CFontHolder::Select 將字型資源選取至裝置內容。
CFontHolder::SetFont CFontHolder連線 物件到 IFont 介面。

公用資料成員

名稱 描述
CFontHolder::m_pFont 物件的 IFont 介面指標 CFontHolder

備註

CFontHolder 沒有基類。

使用此類別實作控制項的自訂字型屬性。 如需建立這類屬性的詳細資訊,請參閱 ActiveX 控制項:使用字型一

繼承階層架構

CFontHolder

需求

標頭: afxctl.h

CFontHolder::CFontHolder

建構 CFontHolder 物件。

explicit CFontHolder(LPPROPERTYNOTIFYSINK pNotify);

參數

pNotify
字型介面的 IPropertyNotifySink 指標。

備註

您必須先呼叫 InitializeFont 來初始化產生的物件,才能使用它。

CFontHolder::GetDisplayString

擷取可在容器的屬性瀏覽器中顯示的字串。

BOOL GetDisplayString(CString& strValue);

參數

strValue
要保存顯示字串之 CString 的參考。

傳回值

如果成功擷取字串,則為非零;否則為 0。

CFontHolder::GetFontDispatch

呼叫此函式以擷取字型分派介面的指標。

LPFONTDISP GetFontDispatch();

傳回值

物件的 IFontDisp 介面指標 CFontHolder 。 請注意,在完成時, GetFontDispatch 呼叫的函式必須在此介面指標上呼叫 IUnknown::Release

備註

呼叫 之前先呼叫 InitializeFontGetFontDispatch

CFontHolder::GetFontHandle

呼叫此函式以取得 Windows 字型的控制碼。

HFONT GetFontHandle();

HFONT GetFontHandle(
    long cyLogical,
    long cyHimetric);

參數

cyLogical
繪製控制項之矩形的高度,以邏輯單位表示。

cyHimetric
控制項MM_HIMETRIC單位的高度。

傳回值

Font 物件的控制碼;否則為 Null。

備註

cyLogical cyHimetric 的比例 可用來計算以邏輯單元表示之字型點大小的適當顯示大小,以MM_HIMETRIC單位表示:

顯示大小 = ( cyLogical / cyHimetric ) X 字型大小

沒有參數的版本會針對螢幕正確傳回字型大小的控制碼。

CFontHolder::InitializeFont

CFontHolder初始化 物件。

void InitializeFont(
    const FONTDESC* pFontDesc = NULL,
    LPDISPATCH pFontDispAmbient = NULL);

參數

pFontDesc
指定字型特性之字型描述結構的指標( FONTDESC )。

pFontDispAmbient
容器環境 Font 屬性的指標。

備註

如果 pFontDispAmbient 不是 Null,物件 CFontHolder 會連接到容器的環境 Font 屬性所使用的介面複製 IFont 品。

如果 pFontDispAmbient 為 Null,則會從 pFontDesc 指向的字型描述建立新的 Font 物件,或從 預設描述建立 pFontDesc 為 Null 時。

建構 CFontHolder 物件之後呼叫此函式。

CFontHolder::m_pFont

物件的 IFont 介面指標 CFontHolder

LPFONT m_pFont;

CFontHolder::QueryTextMetrics

擷取 物件所 CFontHolder 表示之實體字型的資訊。

void QueryTextMetrics(LPTEXTMETRIC lptm);

參數

lptm
將接收資訊的 TEXTMETRIC 結構的指標

CFontHolder::ReleaseFont

此函式會中斷物件與其 IFont 介面的連接 CFontHolder

void ReleaseFont();

CFontHolder::Select

呼叫此函式,將控制項的字型選取到指定的裝置內容中。

CFont* Select(
    CDC* pDC,
    long cyLogical,
    long cyHimetric);

參數

pDC
選取字型的裝置內容。

cyLogical
繪製控制項之矩形的高度,以邏輯單位表示。

cyHimetric
控制項MM_HIMETRIC單位的高度。

傳回值

要取代之字型的指標。

備註

如需 cyLogical cyHimetric 參數的討論, 請參閱 GetFontHandle

CFontHolder::SetFont

釋放任何現有的字型,並將 物件 IFont 連接到 CFontHolder 介面。

void SetFont(LPFONT pNewFont);

參數

pNewFont
IFont 介面的指標。

另請參閱

階層架構圖表
CPropExchange 類別