- 締切済み
ダイアログタイトルバーをダイアログ左側に移動する
VC++ 2008でダイアログを作成していますが,タイトルバーは通常ダイアログの上部に表示されます,それをダイアログ左サイドに配置したいのですが、できません。いろいろサンプルを調べたのですが、それらしいものは、みつけられませんでした。タイトルバーを別途独自に作成するサンプルは、あったのですが記述が少し複雑。やはり、純然たるタイトルバーを変更したいので、どなたかご存知ならご指導をお願いいたします。Win32APIも調べたのですが、タイトルバーのRectがとれません。 よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- machongola
- ベストアンサー率60% (434/720)
回答No.1
こんにちは。 タイトルバーはボタンやテキストボックスの様なコントロールでは無いので、MoveWindow()で移動したりShowWindow()で非表示にしたりと言った芸当は不可能です。 例えば、縦に出す場合はWM_NCHITTESTを処理して、WM_NCPAINTで縦に描写する事で実現します。 参考にして来たサンプルコードの数々は、律儀にタイトルバーを着色したり、タイトル名を書いたり、ドラッグ判定したり、と言った事が成されていると思いますが、其れこそが「通常のタイトルバーでは満足出来ない場合、最低限必要な処理」と言う事になります。