トップレベルのウィンドウにフォントを設定できない

トップレベルのウィンドウにフォントを設定して、子ウィンドウなどで使いまわそうと思ったのですが、トップレベルのウィンドウにはフォントを設定できないようです。

WM_SETFONT のドキュメントには、「テキストを描画するときにコントロールが使用するフォントを設定します。」とあるので、コントロールが対象ということは分かるのですが、トップレベルのウィンドウに設定できないのは少し意外でした。素直にクラスのメンバー変数としてフォントを保持し、そのクラスのメソッドとしてフォントハンドルを返すように組む方がよさそうですね。

ちなみに、ダイアログの場合も WM_SETFONT でフォントは設定できずですが、WM_GETFONT ではリソースエディタ上でダイアログに設定したフォントが返ってくるようです。


kenjinote

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントする