マウスムーヴ時にShiftキーやCtrlキーが押されているかどうかを知る場合VB6では、MouseMoveイベントの「Shift」の内容を見ればわかりましたが、VB.NETではどのようにしていいかわかりません。どうかお教えください。
System.Windows.Forms.Control.ModifierKeys プロパティについて調べてみてください。
Dim value as keys
value = Control.ModifierKeys
if value = key.Shift then 'シフトキーだったら
・
・
って、これだけでよかったんですね。す、すごいです。
どこのどなたか存じ上げませんが、どうもありがとうございました(感謝&感激&土下座)
それだと、他の修飾キーと同時押ししていると排他されちゃうので、正しくはこうですね。
If (Control.ModifierKeys And Keys.Shift) = Keys.Shift Then
MessageBox.Show("Shift キーが押されている")
End If
> どこのどなたか存じ上げませんが、
このレベルであれば、まいける さんもどなたかわかりませんよ。(^^)
まいける さんは、まいける さんですし、
じゃんぬねっと さんは、じゃんぬねっと さんですよね。
あっと、言い忘れました。
GetKeyState とほぼ同じ原理だと思うので、
ウィンドウの描画タイミングによってはうまく取得できない場合があるかもしれません。
まあ問題はないと思いますけど。
> If (Control.ModifierKeys And Keys.Shift) = Keys.Shift Then
> MessageBox.Show("Shift キーが押されている")
> End If
な、なるほど、す、すごい!
お、恐れ入りました。じゃんぬねっと様ご丁寧にありがとうございました。
| ツイート |
|