リッチエディットコントロール

リッチエディットコントロールはちょっと面倒ですね。
やり方はボタンとそう変わらない。
まず、CRichEditctrlの派生クラス(ここではCHogeRichEdit)を登録します。
次に、リソースのStringTableにCRichEditCtrlのIDを作成します。
CxxViewにメンバ変数としてCHogeRichEditを登録します(ここではm_richEditとします)
CxxViewのOnCreate()ハンドラから作成します。
まぁ、本当にここまではボタンと変わりません。
このあと、OnCreate()関数の中でCHogeRichEditのインスタンスを作ります。
その前にAfxInitRichEdit()関数を呼びます。
この関数は、リッチエディットコントロール関連のコモンコントロールを初期化します。
ヘルプにこの関数の戻り値については特になにも書いてないのでわかりませんが、とりあえずこの関数を呼びます。
そしてCHogeRichEditをインスタンス化します。
リッチエディットコントロールの作成例
if(AfxInitRichEdit()){
        m_richEdit.Create(ES_RIGHT | ES_LOWERCASE | WS_VISIBLE ,CRect(210,60,400,200),this,IDC_RICHEDIT);

    }else{
        MessageBox("RichEdit Not Create","Miss",MB_OK);
    }
}

Create()関数
BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );
引数説明
dwStyle リッチエディットのスタイル
rect 表示位置とサイズ
pParentWnd 親コントロール
nID リッチエディットコントロールのID
Create()関数の最初の引数は、リッチエディットの状態を設定します。
WS_VISIBLEは必ず指定しなければなりません。忘れると表示されません(TT)

とりあえず適当にやっています。
次の引数はリッチエディットコントロールの大きさです。
3番目の引数はは親コントロールのことで、今回はCxxViewのことです。
thisというのは現在のコントロールを指しています。
最後は割り当てるIDを指します。

このほかにも、CDocやCViewを変更してリッチエディットコントロールに変更する方法もあります。
こっちの方が楽な気もしますが・・・・