環境:WinXP+VC6(SP5)+MFC
アプリケーションクラスで、ダイアログを次のように表示しています。
BOOL CXXXXApp::InitInstance()
{
・・・・
CXXXXDlgdlg(AfxGetMainWnd()->GetDesktopWindow());
dlg.DoModal();
・・・・
}
で、ダイアログは表示されるのですが、クリックできません。
(ディスクトップもクリックできません。)
Enterなどキーイベントは問題なく処理されます。
どうすれば、クリックできるようになるでしょうか?
おかしな質問で申し訳ありませんが、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
ダイアログベースのアプリケーションってことですか?
それとも MDI/SDIなのでしょうか ・・・ または doc/Viewを使わないMFCとか
AppWizardが吐いたコードの InitInstanceのみをご質問のように変更してそのような状態になるのでしょうか
当方のVC6では現象を再現できないのですが ・・・
現象の再現手順を投稿してみましょう
この回答への補足
おはようございます。情報が不適格で申し訳ありません。
SDIアプリケーションを作っています。
doc/viewも使っています。
それで、AppクラスのInitInstanceにダイアログを追加して現象が発生します。
ただ、OSが、WinXPの場合は発生せず、98seやNT4.0で発生します。
記述が抜けていました。ごめんなさい。
これで、たぶん再現すると思います。
ご教授いただけましたら、お願いいたします。
No.2
- 回答日時:
ん~ そうですね WinMEでも現象は起きるようです
dlgの親ウィンドウって NULLでいいのではないかと思います
CXXXdlg dlg;
dlg.DoModal();
としてやった場合はボタンも押せますよ … 対処療法ですが
dlgの親ウインドウをNULL(デフォルト)にすると、今度は、
親ウインドウがないというエラーが出ました。
ここです。
_AFXWIN_INLINE void CWnd::UpdateWindow()
{ ASSERT(::IsWindow(m_hWnd)); ::UpdateWindow(m_hWnd); }
で、いろいろ調べてみたのですが、モーダルダイアログの親ウインドウは、ディスクトップではいけないようです。
仕様を改めてみようと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 MSアカウントの「個人設定をクラウドから削除します」は機能していないのでしょうか? 1 2022/11/20 17:01
- C言語・C++・C# Seleniumで「ファイルを開く」ダイアログボックスのフォルダ指定する方法を教えてください。 1 2022/05/09 07:38
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- その他(Microsoft Office) Office(Windows版,Word/Excel/PowerPoint等)にログインできません 4 2022/07/24 15:18
- ゲーム フォートナイトがクラッシュする 3 2022/09/19 07:35
- その他(プログラミング・Web制作) pythonでアプリが終了されたときに特定の処理を実行したい 2 2023/01/19 17:13
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) VBA 複数のブックに同じ列を表示させる方法 2 2022/07/20 23:49
- YouTube Win10 Youtubeの動画を開くと、必ず右下に設定ダイアログ?が表示されます 2 2023/03/26 11:35
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
ボタンの状態
C言語・C++・C#
-
画面を強制的に再描画させる方法
C言語・C++・C#
-
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
-
4
ClistBoxでオーナードローがよくわかりません。
C言語・C++・C#
-
5
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
6
MFC ダイアログ上のID取得について
C言語・C++・C#
-
7
ダイアログボックスのボタンコントロールのフォーカスについて
C言語・C++・C#
-
8
ビジュアルC++でボタンの有効/無効
C言語・C++・C#
-
9
MFCでOnPaintのタイミング
C言語・C++・C#
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
メッセージボックスのボタン文...
-
confirmダイアログの表示文字に...
-
メッセージボックスを大きくす...
-
ホームページビルダー21で作成...
-
ダイアログタイトルバーをダイ...
-
'int' から 'LPCSTR' に変換で...
-
ボタンの配置を変更したい
-
ボタンの表示の色、フォントを...
-
ダイアログの色を指定するのは...
-
エディットボックスの処理で画...
-
CButtonのBMP・アイコンの表示...
-
Warning: initial dialog data ...
-
エディットコントロールの色の...
-
VISTA対応Cコンパイラに...
-
MFCのリストボックスについて
-
フォーム上のリストボックスに...
-
DLLから表示しているモーダルダ...
-
ツールチップの表示
-
ダイアログにプレビュー表示
-
MFCダイアログボックスを最前面...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスを大きくす...
-
ボタンの表示の色、フォントを...
-
コンボボックスのドロップダウ...
-
'int' から 'LPCSTR' に変換で...
-
ダイアログボックスで指定した...
-
フォーム上のリストボックスに...
-
confirmダイアログの表示文字に...
-
ダイアログの上のテキストボッ...
-
ボタンの配置を変更したい
-
VC(Ver6.0)でダイアログサイズ...
-
VC++ MFC エラーコード C2248 ...
-
メッセージボックスのボタン文...
-
リソースファイルとは・・・
-
MFCダイアログボックスを最前面...
-
ダイアログの表示位置の保存
-
ホームページビルダー21で作成...
-
vbscriptで、ファイル選択ダイ...
-
エクセル VBA 「Sub Auto_Open(...
-
C# ボタンコントロール内で文字...
-
アイコンをボタンに貼り付け
おすすめ情報