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

わんくま同盟

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

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


(過去ログ 22 を表示中)
■9871 / )  Re[2]: MDI子フォームで利用するDataGrid
□投稿者/ まる (11回)-(2007/11/06(Tue) 13:58:24)
> MDIの子フォームと通常のフォームではショートカットの割付自体が変わっていたかと思いマス。
> ALT+F4では普通フォームを閉じますが、MDIの子フォームだったらCTL+F4みたいな。
>
> 推測ですけど、ショートカットが親フォームから子フォームに行かなくなってるのでは?
> ショートカットキーのイベントを拾ってみるようにして、確認されてみてはいかがでしょうか。
> 原因が親から子に引き継がれないとかであったら、子に投げなおすようにしてあげれば
> うまくいくかも知れませんね。

回答ありがとうございます。概ねそのとおりの事象でした。

例えばMenuStrip内の、ToolStripMenuItemにShortcutKeysにてCTRL+C等を設定していた為に
子フォーム(親フォームにも)にイベントが行かなかった事が分かりました。
ShortcutKeysの設定を外して、イベントハンドラにてキーイベントを取得したところ、
ctrl+Cを実行した際、ControlKeyと、Cが押されたイベントが取得でき、
動作も思った動作が実現できました。

ただ1点気になるのですが、ShortcutKeysにctrl+Cを設定し、
親フォームにてキーイベントの取得をした場合、ControlKeyのクリックは取得できるのですが、Cをクリックしたイベントが取得できませんでした。
ShortcutKeysを設定することにより、最初にMenuStripでキーを受け、親フォームに届かない事象な気がしますが、原因が分かりません。。。


返信 編集キー/


管理者用

- Child Tree -