C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: MFCのモードレスダイアログのキーイベント受信


(過去ログ 98 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■58457 / inTopicNo.1)  MFCのモードレスダイアログのキーイベント受信
  
□投稿者/ ハッチ (1回)-(2011/04/06(Wed) 00:36:03)

分類:[C/C++] 

2011/04/06(Wed) 00:55:31 編集(投稿者)
2011/04/06(Wed) 00:55:26 編集(投稿者)
2011/04/06(Wed) 00:55:24 編集(投稿者)

お初にお目にかかります。
他人が作ったC++のソースを改修しています。

使用環境
Microsoft Visual Studio 2008
C++のMFC

モードレスダイアログで、2つのダイアログを使用します。
ダイアログAにはコントロールが2個
ダイアログBにはコントロールが7個
存在し、定周期でAとBを切り替える処理をしています。

ダイアログ表示中にALT+F4のキー押下を検知すると処理を終了させたいのですが、
OnKeyイベントはモードレスでは動作せず、モードレスでも動作すると聞いた
PreTranslateMessageやコールバックのWinProc、フックを使って、キー押下を検知
しようとしたのですが、押下しても何の反応もありませんでした。

簡単なプログラムではPreTranslateMessageやWinProc、フックの動作は確認できたので、使い方は正しいと思うのですが、他に、キーイベントを受け取る方法は
ございませんでしょうか?

また、OnPaintは定期的に呼ばれるので、そのタイミングで
押下されていたら、というようなことは出来るでしょうか?
引用返信 編集キー/
■58462 / inTopicNo.2)  Re[1]: MFCのモードレスダイアログのキーイベント受信
□投稿者/ shu (609回)-(2011/04/06(Wed) 14:26:31)
No58457 (ハッチ さん) に返信

MFCのことはよく分かりませんが、
ALT-F4って標準ではアクティブウィンドウを閉じるのだから
画面が閉じられたときに処理を終了させるとか出来ませんか?
引用返信 編集キー/
■58475 / inTopicNo.3)  Re[2]: MFCのモードレスダイアログのキーイベント受信
□投稿者/ ハッチ (2回)-(2011/04/08(Fri) 02:04:16)
No58462 (shu さん) に返信
返信遅くなりまして申し訳ありません。

> ■No58457 (ハッチ さん) に返信
>
> MFCのことはよく分かりませんが、
> ALT-F4って標準ではアクティブウィンドウを閉じるのだから
> 画面が閉じられたときに処理を終了させるとか出来ませんか?
ALT+F4を押してもウィンドウが閉じないのも問題なのです。
記述していませんでしたが、周期画面切り替えもSleepを使用して切り替えているため、
そのせいもあるのかもしれません。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -