次の方法で共有


標準フォントオブジェクト

コンテナーによって提供される標準アンビエント フォント プロパティと、コントロールによって提供される標準フォント プロパティの両方が標準フォント オブジェクトを提供します。 つまり、これらの標準フォントは、標準フォント オブジェクトへの IDispatch ポインターを提供します。

フォント オブジェクトは、基になる GDI フォント サポートの上にインターフェイスのセットのシステム提供の実装です。 フォント オブジェクトは、 FONTDESC 構造を指定して API 関数 OleCreateFontIndirect を通じて作成されます。 フォント オブジェクトは、 IFont インターフェイスを介して多数の読み取り/書き込みプロパティとカスタム メソッドをサポートし、 IFontDisp dispinterface を介して同じプロパティのセット (メソッドではなく) をサポートします。 dispinterface は、前にメンションしたフォント プロパティに使用されます。 プロパティは、 LOGFONT 構造体で説明されている GDI フォント属性に対応します。

font オブジェクトは、クライアントがフォント プロパティの変更時期を判断できるように、送信インターフェイス IPropertyNotifySink もサポートしています。 フォント オブジェクトは少なくとも 1 つの発信インターフェイスをサポートするため、この目的のために IConnectionPointContainerIPropertyNotifySink 用の 1 つの接続ポイントも実装します。

font オブジェクトは、フォントに指定された他の属性に準拠する Windows フォント ハンドルである hFont プロパティを提供します。 フォント オブジェクトは可能な限りこのフォントの実現を遅らせるので、フォントに 2 つのプロパティを連続して設定しても中間フォントは実現されません。 さらに、最適化として、標準フォント オブジェクトメインフォント ハンドルのキャッシュが含まれます。 同じプロパティを持つ同じプロセス内の 2 つのフォント オブジェクトは、同じフォント ハンドルを返します。 font オブジェクトは、このキャッシュからフォントを削除できます。これにより、この hFont プロパティを使用するクライアントに特別な考慮事項が導入されます。 詳細については、 IFont::get_hFont を参照してください。

フォント オブジェクトは、 IStream のインスタンスから自身を保存して読み込むことができるような IPersistStream もサポートしています。 フォント オブジェクトを内部的に使用する他のオブジェクトは、通常、オブジェクト独自の永続化処理の一部としてフォントを保存して読み込みます。

さらに、font オブジェクトは IDataObject をサポートしています。これにより、各フォント プロパティの型指定された値を含むプロパティ セットが提供されます。

コントロール プロパティ