OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

VB6.0について教えてください。

  • すぐに回答を!
  • 質問No.147687
  • 閲覧数585
  • ありがとう数1
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 23% (40/169)

OptionButtonで、←・↑・→・↓の4種類の動きをかえたいのですが
できないでしょうか?
もしできないのであれば、Textbox以外で←・↑・→・↓の4種類のくべつが
できるなにかありませんか?

よろしくおながいします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル13

ベストアンサー率 46% (643/1383)

オプションボタンのKeyDownイベントに、下記のように書けばいいです。
KeyDownイベントは、フォームなどのオブジェクトにも装備されていますので、色々応用が出来ます。

Private Sub Option1_KeyDown(KeyCode As Integer, Shift As Integer)
  Select Case KeyCode
    Case vbKeyUp
      'TODO:↑を押したときの動作
      
      KeyCode = 0 '標準のキー押下時の動作をキャンセルする
    Case vbKeyDown
      'TODO:↓を押したときの動作
      
      KeyCode = 0
    Case vbKeyLeft
      'TODO:←を押したときの動作
      
      KeyCode = 0
    Case vbKeyRight
      'TODO:→を押したときの動作
      
      KeyCode = 0
  End Select
End Sub
補足コメント
chiba-masaru

お礼率 23% (40/169)

できないですが???
→を押してもKeyDownにこないです(なぜ?)
投稿日時 - 2001-10-08 17:00:01
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.2
レベル13

ベストアンサー率 46% (643/1383)

>できないですが??? →を押してもKeyDownにこないです(なぜ?) あれ、ホントですねぇ。すいません、確かめずに投稿してしまって。 Keydownイベントがあるにもかかわらず、同イベントが発生しない…妙な仕様ですねぇ。(ちなみに、VB5使ってます) 代替策として、SetWindowLong APIを使って、メッセージをフックしてみたんですが、これでもカーソルキー「だけ」がフック出来 ...続きを読む
>できないですが???
→を押してもKeyDownにこないです(なぜ?)

あれ、ホントですねぇ。すいません、確かめずに投稿してしまって。
Keydownイベントがあるにもかかわらず、同イベントが発生しない…妙な仕様ですねぇ。(ちなみに、VB5使ってます)

代替策として、SetWindowLong APIを使って、メッセージをフックしてみたんですが、これでもカーソルキー「だけ」がフック出来ない。他のキーは全部取得できるんですが…
(SetWindowLong について)
http://www.int21.co.jp/pcdn/vb/vb5/vb5adrof.html


それ以外の方法では多分、SetWindowsHookEx / UnhookWindowsHookEx APIを使って、キーボードを監視すれば出来るんじゃないかなぁ。使ったこと無いんで、分からないんですが(^^;
(参考URLに解説あり …ですが、よく分からん(汗))

このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ