リッチ エディット コントロールでの文字書式の設定
更新 : 2007 年 11 月
リッチ エディット コントロール (CRichEditCtrl) のメンバ関数を使用して、文字を書式化したり、書式情報を取得したりできます。文字については、タイプフェイス、サイズ、色、さらに太字、斜体、テキストの保護などの効果を指定できます。
SetSelectionCharFormat メンバ関数および SetWordCharFormat メンバ関数を使用して、文字書式を適用できます。選択したテキストの現在の文字書式を確認するには、GetSelectionCharFormat メンバ関数を使用します。これらのメンバ関数と共に CHARFORMAT 構造体を使用して、文字属性を指定します。CHARFORMAT の重要なメンバの 1 つが dwMask です。SetSelectionCharFormat および SetWordCharFormat では、dwMask はこの関数呼び出しが設定する文字属性を示します。GetSelectionCharFormat は、選択範囲の最初の文字の属性を返し、dwMask は選択範囲全体に適用されている属性を示します。
また、"既定の文字書式" を取得および設定することもできます。既定の文字書式は、後で挿入される文字に適用される書式です。たとえば、アプリケーションの既定の文字書式を太字に設定すると、ユーザーが入力する文字は太字になります。既定の文字書式を取得するには GetDefaultCharFormat メンバ関数を使用します。設定するには SetDefaultCharFormat メンバ関数を使用します。
テキストの文字属性を保護すると、そのテキストの文字状態が維持されます。保護されたテキストをユーザーが変更しようとすると、リッチ エディット コントロールは親ウィンドウに EN_PROTECTED 通知メッセージを送信します。これにより親ウィンドウで変更を許可したり禁止したりできます。この通知メッセージを受け取るには、SetEventMask メンバ関数を使用して、通知を有効にする必要があります。イベント マスクの詳細については、「リッチ エディット コントロールからの通知メッセージ」を参照してください。
前景色は文字属性ですが、背景色はリッチ エディット コントロールのプロパティです。背景色を設定するには、SetBackgroundColor メンバ関数を使用します。