重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

VC++ 2008でダイアログを作成していますが,タイトルバーは通常ダイアログの上部に表示されます,それをダイアログ左サイドに配置したいのですが、できません。いろいろサンプルを調べたのですが、それらしいものは、みつけられませんでした。タイトルバーを別途独自に作成するサンプルは、あったのですが記述が少し複雑。やはり、純然たるタイトルバーを変更したいので、どなたかご存知ならご指導をお願いいたします。Win32APIも調べたのですが、タイトルバーのRectがとれません。
 よろしくお願いいたします。

A 回答 (1件)

 こんにちは。



 タイトルバーはボタンやテキストボックスの様なコントロールでは無いので、MoveWindow()で移動したりShowWindow()で非表示にしたりと言った芸当は不可能です。
 例えば、縦に出す場合はWM_NCHITTESTを処理して、WM_NCPAINTで縦に描写する事で実現します。

 参考にして来たサンプルコードの数々は、律儀にタイトルバーを着色したり、タイトル名を書いたり、ドラッグ判定したり、と言った事が成されていると思いますが、其れこそが「通常のタイトルバーでは満足出来ない場合、最低限必要な処理」と言う事になります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!