
はじめまして。
質問させてください。
VC 2005 MFC を使用して開発しております。
ダイアログベースです。
ポップアップメニューのアイテムをクリックされたら
チェックマークをON OFFしたいのですが、現状うまくいきません。
[現在の方法]
//右クリックで表示
void CAnalogClockDlg::OnRButtonDown(UINT nFlags, CPoint point)
{
CMenu menu;
VERIFY(menu.LoadMenu(IDR_MENU));
CMenu* pPopup = menu.GetSubMenu(0);
ASSERT(pPopup != NULL);
ClientToScreen(&point);
pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, AfxGetMainWnd());
CDialog::OnRButtonDown(nFlags, point);
}
//項目の有効無効時
void CAnalogClockDlg::OnUpdatePopupFore(CCmdUI *pCmdUI)
{
pCmdUI->SetCheck(false);
pCmdUI->SetText(_T("test"));
}
リソースメニューで
[checked] = trueにして
初回表示はチェックありになっているのですが、
pCmdUI->SetCheck(false);
の処理で変更されません。
ちなみにキャプションを変更できません。
何か根本的に間違っているのでしょうか?
詳しい方がおりましたら
ご教授お願いいたします。
No.1ベストアンサー
- 回答日時:
<チェック有効>
GetParent()->GetMenu()->CheckMenuItem(ここに項目ID,MF_BYCOMMAND|MF_CHECKED);
<チェック無効>
GetParent()->GetMenu()->CheckMenuItem(ここに項目ID,MF_BYCOMMAND|MF_UNCHECKED);
これを、“CAnalogClockDlg:OnMeneItem???” のイベントハンドラ
で行えばいくはずですが・・。
No.2
- 回答日時:
<追記>
テキストの変更は
GetParent()->GetMenu()->ModifyMenu(項目ID、MF_BYCOMMAND|MF_STRING、上記同様の項目ID、"テキスト")
でできますよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ダイアログ表示時にチェックボックスにチェックされている状態にするには?
C言語・C++・C#
-
MFCのメニューバーのイベント取得
C言語・C++・C#
-
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
-
4
MFCでbitmapを背景にしてstaticテキストを透過させる方法
C言語・C++・C#
-
5
コンボボックス表示文字列を取得する場合
C言語・C++・C#
-
6
コンボボックスのドロップダウンリストが表示されない
C言語・C++・C#
-
7
CString型 全角半角を意識せずに「1文字」ずつ取り出す
C言語・C++・C#
-
8
CFileDialogの最初のディレクトリ設定
C言語・C++・C#
-
9
CEdit の内容が変わった時にメッセージを表示させたい
C言語・C++・C#
-
10
C++言語で、構造体のコピーは可能(しても良い)のでしょうか?
C言語・C++・C#
-
11
【C++/CLI.NET】コンボボックスの値の設定・取得
C言語・C++・C#
-
12
リストビューの選択状態を取得するメッセージはありますか?
C言語・C++・C#
-
13
ダイアログ内コントロールの位置取得について
C言語・C++・C#
-
14
画面を強制的に再描画させる方法
C言語・C++・C#
-
15
ビットマップ(bmp)形式で背景を透過にできる?
画像編集・動画編集・音楽編集
-
16
VC++ MFC CListCtrlで、ボタンのあるリストの作り方
C言語・C++・C#
-
17
動的な構造体配列の初期化
C言語・C++・C#
-
18
MFCのドラッグ&ドロップについて
C言語・C++・C#
-
19
CFileDialogでフォルダだけを選択させる
C言語・C++・C#
-
20
VC++でUTF-8のファイルを出力したい
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
メッセージボックスを大きくす...
-
ボタンの表示の色、フォントを...
-
「アイテムは収集されました」...
-
エクセルで作った新しいウイン...
-
マインクラフト(pc版)で座標...
-
VBでのハンドルの使い方
-
[VB.net] DataGridViewの列ヘッ...
-
ゲームでは結局どっちが良いの?
-
検索の画面がでなくなってしま...
-
jw-cadにBMP画像を貼り付けまし...
-
C言語による楕円関数の記述
-
Excelの上下を固定したい
-
C# ウィンドウハンドルの取得
-
エクセルのコントロールツール...
-
グラフの交点の求め方(Excel)
-
非アクティブのウィンドウを最...
-
【C#】別フォームも同時に閉じ...
-
領域を塗りつぶしたい
-
wordで分数打とうとするとフォ...
-
MFC XPでのTextOutのボヤケにつ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスを大きくす...
-
ダイアログの上のテキストボッ...
-
リソースファイルとは・・・
-
C# ボタンコントロール内で文字...
-
フォーム上のリストボックスに...
-
コンボボックスのドロップダウ...
-
ボタンの表示の色、フォントを...
-
MFC ポップアップメニューのチ...
-
ダイアログボックスで指定した...
-
ボタンの配置を変更したい
-
エディットコントロールの色の...
-
VC(Ver6.0)でダイアログサイズ...
-
ツールチップの表示
-
'int' から 'LPCSTR' に変換で...
-
VC++ MFC エラーコード C2248 ...
-
ダイアログ間のメッセージの送...
-
メッセージボックスのボタン文...
-
ダイアログの表示位置の保存
-
ダイアログにプレビュー表示
-
confirmダイアログの表示文字に...
おすすめ情報