■ 現在のこのページの役立ち度:
表示されない場合こちらのリンクからもご覧になれます。
■ このページの役立ち度を評価する:
役立ち度を評価してください。
(1(左):あまり役立たない - 5(右):大変役立った):
■ ページの共有:
[ サイト内検索 ]
カスタム検索
#3022-0テキストボックスで。taku31999-11-06(土) 16:29
     #3027-0RE#3022:テキストボックスで。obara1999-11-06(土) 23:07
     #3039-0RE#3027:テキストボックスで。萬識楽1999-11-07(日) 23:17
     #3040-0RE#3039:テキストボックスで。とんがらし1999-11-08(月) 00:18
     #3042-0RE#3039:テキストボックスで。魔界の仮面弁士1999-11-08(月) 00:49
     #3044-0RE#3042:テキストボックスで。魔界の仮面弁士1999-11-08(月) 01:05
     #3046-0RE#3044:テキストボックスで。とんがらし1999-11-08(月) 03:17
#3022-0
テキストボックスで。
テキストボックスにEnterを押すとイベントが起きるってやつで、
どうしてもbeep音(?)カチッっていうやつが鳴ってしまいます。
鳴らさないようにするにはどうしたらよいのでしょうか・・・
#3027-0
RE#3022:テキストボックスで。
> テキストボックスにEnterを押すとイベントが起きるってやつで、
> どうしてもbeep音(?)カチッっていうやつが鳴ってしまいます。
> 鳴らさないようにするにはどうしたらよいのでしょうか・・・

KeyPressイベントでKeyAsciiに0をセットすればいいのでは?
Private Sub Text1_KeyPress(KeyAscii As Integer)
  KeyAscii = 0
End Sub
#3039-0
RE#3027:テキストボックスで。
似たような内容で困っておりましたので、便乗で質問させて頂きます。
フォームにカーソルを作らないす方法と、
→↑←↓のキーボードの方向キーを押したときにカーソルがボタンから他のボタンへ
移動しないようにする方法があれば教えて下さい。
他のボタンのイベントは下の方法でキャンセルできたのですが、
方向キーだけは今のところどうにもなっていません。
よろしくおねがいします。

> Private Sub Text1_KeyPress(KeyAscii As Integer)
>   KeyAscii = 0
> End Sub
#3040-0
RE#3039:テキストボックスで。
> →↑←↓のキーボードの方向キーを押したときにカーソルがボタンから他のボタンへ
> 移動しないようにする方法があれば教えて下さい。
> 他のボタンのイベントは下の方法でキャンセルできたのですが、
> 方向キーだけは今のところどうにもなっていません。

調べが足りひんにぃ。

KeyPressが判ってたら、そこから KeyDown/KeyUpは見つけられそうなもんだに。

さぁ、調べられたし。
#3042-0
RE#3039:テキストボックスで。
> 似たような内容で困っておりましたので、便乗で質問させて頂きます。
別のコントロールの話ですし、便乗ではなく、新規に質問を起こしても良かったと思いますが…。(^_^;)

> フォームにカーソルを作らないす方法と、
ごめんなさい。この質問の意味がわかりませんでした。m(_ _;)m

> →↑←↓のキーボードの方向キーを押したときにカーソルがボタンから他のボタンへ
> 移動しないようにする方法があれば教えて下さい。
これは、VBの仕様上無理です。
どうしてもやりたいのであれば、そのコントロールを使うのをやめましょう。(泣)
で、ImageコントロールやLabelコントロールなどのClickイベントを、
ボタンの代用にするとか…。

あるいは、コントロール全てのTabStopをFalseにするというのもありです。
そうすれば、フォーカスの移動が発生しなくなるので。

いずれにしても、VB標準の動作ではないので、苦労の割に実りは少ないと思います。(/_;)


なお―――VBをはじめたばかりの人におすすめできるものではないですが―――
以下のURLをみて、その内容を理解できるのであれば、
一応、矢印キーが押されたことをフォーカス移動前に認識して、
「矢印キーが押されていなかった事にする」ができます。(結構無茶な処理ですが)

http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/9802/subc/
http://www.sfdata.ne.jp/windev/vb-ml/vb-ml/msg10151.html
#3044-0
RE#3042:テキストボックスで。
ごめんなさい、大嘘書きました。m(_ _;)m

> あるいは、コントロール全てのTabStopをFalseにするというのもありです。
> そうすれば、フォーカスの移動が発生しなくなるので。
これは、「TABキー」の移動しか抑制されません。
矢印キーによる移動に対しては、無力です。m(_ _;)m


あ、それと#3040で、KeyDownという回答がありましたが、
残念ながら矢印キーは、フォームにCommandButtonや、CheckBox等があると 
KeyDown等でも認識できないのです。
# 全てのコントロールをVisible=Falseにするとか、
# Enabled = Falseにすれば、一応拾えるけど(泣)

ためしに以下のソースの動作を、コントロールを何も貼らない時と、
コマンドボタンをいくつか貼った時とで比べてみてください。>とんがらしさん

Option Explicit

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Select Case KeyCode
     Case vbKeyLeft
        Caption = "←"
     Case vbKeyUp
        Caption = "↑"
     Case vbKeyRight
        Caption = "→"
     Case vbKeyDown
        Caption = "↓"
     Case Else
        Caption = "他"
    End Select
End Sub

Private Sub Form_Load()
    KeyPreview = True
End Sub
#3046-0
RE#3044:テキストボックスで。
魔界の仮面弁士 さま、誠に恐れ入りますです。

サンプルソース確認しました。 ホントですねぇ。

> あ、それと#3040で、KeyDownという回答がありましたが、
> 残念ながら矢印キーは、フォームにCommandButtonや、CheckBox等があると 
> KeyDown等でも認識できないのです。

ヘルプにゃぁ、Default/Cancelプロパティの設定したコマンドボタンって
あったんで鵜呑みにしとったです。

萬識楽 さん、ウソ書きました。 すんません。

#言い訳するけど、「テキストボックスで」って題名はなしではないかぇ?
#確かに文章を適当に読んだ方も問題あるけどに・・・。
お探しの情報は見つかりましたか?お困りの問題は解決しましたか?
サイト内検索, 似た記事検索で見つからなくてもあきらめずに掲示板で質問してみましょう。
VB初心者友の会があなたのお役に立てれば幸いです。また、本ページの投稿者の方々にこの場を借りて感謝致します。
本ページは過去ログを集めて自動構成しています。よろしければこのページに関するフィードバックをお願いします。
(※ 構成の誤り、広告等の不適切な記事、リンク切れ、読めないページの報告など)