まさし@疲れ気味なのでちょっと冷たくです。

In [mfc 20302] Re: ATL上でのフォント使用方法2
j...@mb.infoweb.ne.jp Wrote:

> 教えていただいたのはコントロールの生成後の動的な変更方法だと
> 思っていいのでしょうか?
> デザインモード、動作モードともにOKなのでしょうか?

試せばわかる事なのでは?

前のメールに但し書きをしたと思いますが、この部分について、僕が実際にコー
ドを書いて試している訳ではありません。

逆に結果を教えて欲しいと思うのですが...

まぁいいか。

詳しい動作は知りませんが、コントロールのプロパティ/データ自体の保存方法は
コントロール自身しか知らないはずです。
IPersistStorage or IPersistStream の類を使って保存/復元しているだけだと思
います。(ダイアログの場合はリソースの中へ/から)

そんなこんなから考えて、デザインモード/動作モードというのは、ActiveX コン
トロールとってそんなに差はないはずです。(いずれも実行中)

という訳で、予想としてはOKのはずです。

>   CComPtr<IFontDisp> t_pFont;
>   FONTDESC _fontdesc =
>       { sizeof(FONTDESC),OLESTR("MS Pゴシック "),FONTSIZE(10),FW_BOLD,
>         ANSI_CHARSET,FALSE,FALSE,FALSE };
>   OleCreateFontIndirect(&_fontdesc,IID_IFontDisp,(void**)&t_pFont);
>   put_Font(t_pFont);

これが本当の正解かどうかはわかりませんが
(1) "MS Pゴシック " -> "MS Pゴシック" 
(2) ANSI_CHARSET       -> SHIFTJIS_CHARSET

でうまくいくと思います。
# (1) については本当に間違いなのかどうかは確認していません
# (2) については、ヘッダーを検索して「これだろう」と見当を付けました

多分、初期表示時は、Arai とか出てきていたのでしょうけど、Courier とかを初
期設定するとどうなるかとかは試してみるべきだったと思います。
(思いつかなかったのでしたらしょうがないですけど...)

> それと、デザインモードでのテスト時にブレークポイント、トレース出力等
> は可能なのでしょうか?

MSDN のサンプルに TSTCON というのがあるので、これを使ってください。
(以前にも書いたと思います)

ではでは。