はじめまして、初投稿です
OfficeXPタイプのメニューウィンドウを作るには
どうしたらいいでしょうか?
色々調べたのですが方法が見つかりません。
環境はVC++ 6.0 SP5, IE6, WinAPIです。
Microsoftがやっている方法は知りませんが、こんなのはどうでしょうか。
Xtreme Command Bars 7.0
http://www.codejock.com/products/commandbars.asp
ただこれは単にオーナードローを使用して自前で描画しているだけみたい
なので、「システムのプロパティ」->「詳細設定」->「パフォーマンス」
->「視覚効果」->「パフォーマンスを優先させる」を選択してもクラシック
スタイル(?)には変更されないみたいです。
#Lunaインターフェースにするなら.manifestファイルを設定してやる
#必要があります。ただ試したことがないのでhttp://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=luna+manifest&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja
#ここら辺を参考にしてみてください。
こちらでははじめましてになります。たかみちえです。
さて、manifestファイルを作るなり埋め込むなりしてやっても、
変わるのはボタンやツールバーだけです。
(グループボックスやタブシートなども変わりますけど、タブシートはC言語製のものでも変わらないことがありますね)
Officeのメニューは多分、オーナードローしてるだけじゃないでしょうか?
だって、別にXPにもああいうメニューがあるわけではありませんし(少なくともわたしはよそで見たことありません)。
メインメニューの親メニューが、XPボタン風になるメニューがあるのは、
それがメニューではなく、キャプションのみのツールバーにドロップダウンメニューをつけるなどしたからでしょうし。
ちなみに、manifestファイルですけど、
数ヶ月ほど前、窓の杜でそれを生成するツールが紹介されてましたね。
ありがとうございます
自分で又色々と調べてみたところ、お二人の仰るとおり
やはりオーナードローを使うしかないようです。
いろいろやってみようかと思います
最初はプラットフォームSDKかと思っていたんですけどね^^;