VC++2008のメニューバーがdisable状態

このQ&Aのポイント
  • VC++2008のメニューバーがdisable状態になっており、選択することができない問題が発生しています。
  • 新規ダイアログを作成し、既存ダイアログのメニューバーに項目を増やし、選択すると新規ダイアログがポップアップする処理をしようとしていますが、メニューバーの項目がdisableの状態であり、選択できません。
  • イベントハンドラを追加し、「OnUpdateScreenDivision」の中に[pCmdUI->Enable(TRUE);]という文を書きましたが、デバッグしてもメニューバーの選択時に「OnUpdateScreenDivision」を通ることはありません。
回答を見る
  • ベストアンサー

VC++2008のメニューバーがdisable状態

まず新規ダイアログを作成しました。 そして既存ダイアログのメニューバーに項目を増やし、 増やした項目を選択すると、新規ダイアログがポップアップするような処理をしようとしています。 しかし、メニューバーの項目はdisableの状態となっており 選択する事ができません。 イベントハンドラも追加し 「OnScreenDivision」と「OnUpdateScreenDivision」を作成し、 「OnUpdateScreenDivision」の中には[pCmdUI->Enable(TRUE);]という文を書きました。 しかしデバッグし、メニューバーを選択しても 「OnUpdateScreenDivision」の中を通る事はありません。 どのようにしたら、メニューバー選択時に「OnUpdateScreenDivision」を通る事が出来るでしょうか? ご協力頂けたら幸いです。

  • 7u7
  • お礼率75% (63/83)

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

 こんばんは。  ダイアログ上のメニューは、ON_UPDATE_COMMAND_UIハンドラが作動しないと言う問題を抱えている様です。  WM_INITMENUPOPUPのメッセージハンドラをオーバーライドして、以下参考URLからOnInitMenuPopup()ハンドラのソースコードを御拝借しましょう。其のままコピーアンドペーストでOKです。   http://d.hatena.ne.jp/f_YmdV79/20090331/p1  此れで当初の目的を果たせる筈です(一応「Windows XP sp3」上の「VisualStudio2008 sp1」で動作確認しています)。

関連するQ&A

  • Excel VBA メニューバー内の各項目の enable/disable変更

    Excel VBA を用いて Excelのメニューバーの各項目の enable/disable 状態を変更する事は可能でしょうか? (「編集」-「貼り付け」の許可/禁止の切り替えなど) ご存知の方、教えてください。お願いします。

  • 他アプリの操作(メニューバー)

    市販されているアプリケーションを自分で作成しているソフトで操作したいのですが、どの様に制御したらいいのか判りません。プログラムはVB6.0で作成しております。 したい事は他のアプリケーションでメニューバーの中の項目の 印刷項目を選択したいのですが、メニューバーのハンドルを取得 出来ず困っております。 そもそもメニューバーのハンドルって取得できるのでしょうか?

  • VC++ メニューバーのアイコンと、ショートカットキーについて

    開発環境はVC++6.0 SDKでやっているのですが、 メニューバーの項目の横に("新規作成"のようなメニューの左側に)にアイコンのような絵を付けることってできないのでしょうか? それと、アクセラレータリソースで作った、ショートカットキーをメニューの中に表示させるにはどのようにすればよいでしょうか?("新規作成 Ctrl+N"のような感じに) どなたかお願いします。

  • Excelのメニューバーのファイルが選べない

    Excelのメニューバーに「ファイル」とか「編集」とか「表示」とかあると思うのですが、このうち「ファイル」がグレーになってしまい、選択できない現象が起きてしまいました。 既存のファイルでも、新規作成にしても同じです。 ちなみにWordを立ち上げたら、通常通り「ファイル」は選択できました。 OSはMe、Excelのバージョンは2000です。 宜しくお願いします。

  • EXCEL2003 メニューバーの項目が!

    ぜひ、教えてください! メニューバーの項目の中で[ツール]が消えてしまいどうすればいいか困っています。 消えたきっかけは自分の操作ミスによるもので、マクロをメニューバーに設定しようと ユーザー設定メニュー項目 から マクロ項目をメニューバーの[ツール]と[データ]の間に 一時、設定、またマクロメニュ‐を消去できるかドラックしながらユーザー設定ダイアログに 戻したりしていたら、いつのまにか[ツール]が消えてしまいました。 どういう手順でもとの状態に戻せばいいのか困っております。 ユーザ‐設定→ツールバー→リセットではダメでした。 やはりユーザー設定→コマンド→分類ツールを1つづつ追加していくのがいいのでしょうか? 元の状態がいくつツールに登録されていたかおぼえていませんし、具体的な作業があいまいなので 具体的な手順のアドバイスお待ちしております。

  • ビルダーのメニューバーの項目が無くなった?

    お願いします。 ビルダー10を使用しています。 メニューバーの中の項目・プルダウンメニューの中の項目が無くなった?ものがあります。 今までは、メニューバーの中には”編集”や”フレーム”等があったのですが、それが無くなってしまいました。 なぜなのでしょうか? 特別に設定をいじった覚えはないのですが・・・ お分かりになる方がいらっしゃいましたら、アドバイスお願いします。

  • Firefox3のメニューバーについて

    お世話になります。 Firefox3のメニューバーについて、ご質問です。 昨日、FirefoxをDLして、快適に使っているのですが、メニューバー(ファイル、編集、表示、履歴、ブックマーク、ツール、ヘルプ)の中にある「履歴」という項目を非表示にしたいのですが、そういった方法はありますでしょうか。 今まで、IE6を使っていましたが、履歴といった項目はなかったので、同じようにしたいのです。 履歴の項目だけ非表示が難しいなら、メニューバーごと非表示でもかまわないのですが。 お分かりになる方がいらっしゃいましたら、教えてください。 よろしくお願いいたします

  • ポップアップのメニューバーの作り方

    メニューバーをポップアップで作成したいのですが、HTMLとCSSだけで作ること可能でしょうか。可能であれば、ソースや、おすすめの本、サイトなどをご教示お願いいたします。 作りたいメニューバーは、親メニューをマウスオーバーするとサブメニューがポップアップで表示されて、サブメニューをクリックするとリンク出来るメニューバーです。 ネットで検索したところ、ジェイクエリー モバイルや、JavaScrip を使用した方法は見つけたのですが、私は初心者で、HTMLとCSSしか知識がありません。 HTMLとCSSだけでは作成が難しい場合、他の方法(ジェイクエリー モバイルや、JavaScrip 等)で初心者でも出来そうなやり方(おすすめのやり方)があれば、ご教示お願いいたします。

    • ベストアンサー
    • CSS
  • メニューバーのショートカットキー(Win32API)

    リソーススクリプトとWin32APIでメニューバーの付いているウィンドウズアプリケーションを作りました。 メニュー内のポップアップはAlt+キーで開けるように"ポップアップの文字列(&H)"としておいたのですが、実際にショートカットで開こうとすると、Alt押しっぱなし+キーでは開けず、Altを押してメニューバーを選択状態にした後にキーで選択する、といった風にしか開けませんでした。 しかし多くのアプリケーションではAlt押しっぱなし+キーでもポップアップが開けます。そうする為にはWM_SYSKEYDOWNを処理してポップアップを開くようにする以外に方法はないでしょうか? 回答よろしくお願いします。

  • Dreamweaver メニューバー Widgetについて

    単純なことなんですが宜しくお願いします。 項目追加などの作業で、ヘルプに 1、ドキュメントウィンドウで、メニューバー Widget を選択します。 2、プロパティインスペクタで、1 列目の上にある [+] ボタンをクリックします。 と有りますが、「メニューバー Widget を選択します」とはどの様に選択するのでしょうか? 太枠になった状態ではダメでした。

専門家に質問してみよう