- PR -

VB.NET TextBoxがアクティブになるイベント

1
投稿者投稿内容
KIMERA
大ベテラン
会議室デビュー日: 2003/02/28
投稿数: 112
お住まい・勤務地: 兵庫県・大阪府
投稿日時: 2003-03-29 12:33
こんにちわ。
VB.NETでWindowsアプリケーションの開発練習をしています。

TextBoxにカーソルが入ったときに起こすイベントプロシージャを作りたいのですが
ヘルプなどを見たところ、GotFocusというのが妥当と判断し
そのイベントを作ろうとしたのですが、コード編集のところでは、TextBoxを選んでも
GotFocusのイベントが一覧にでてきませんでした。

何か別の方法でやるべきなんでしょうか?

TextBoxにカーソルがのればイベントを起こす。
というものなのですが、他に良い方法があれば教えてください。

ちなみに、マウスだけでなくTABキーでもカーソルが入ればイベントを起こすようにしたいです。
(最悪はマウスダウンイベントとキダウンイベントの2つを作ればいいのでしょうが・・・。)
一郎
ぬし
会議室デビュー日: 2002/10/11
投稿数: 1081
投稿日時: 2003-03-29 15:49
>そのイベントを作ろうとしたのですが

「イベントを作る」というのは正確な表現ではないですね。
クラスに新しいイベントメンバを作ろうというのではなく、イベントが起きた時に呼ばれるメソッドを書くということですよね?

>GotFocusのイベントが一覧にでてきませんでした
これはインテリセンスの一覧だと思いますが、出てこなくても構わず打ち込んでみてください。
インテリセンスの一覧は、可能なものが全て出るわけでもなく、書けないものが混じっていたりもします。特にVB.NETのソースを書いている時は。
(バグなのか、わざとやっているのか分かりませんが)
KIMERA
大ベテラン
会議室デビュー日: 2003/02/28
投稿数: 112
お住まい・勤務地: 兵庫県・大阪府
投稿日時: 2003-03-29 17:46
なるほど。
一郎さん、どうもありがとうございます。
大変参考になりました。
Izumi, Y.
ベテラン
会議室デビュー日: 2002/03/19
投稿数: 77
お住まい・勤務地: 東京
投稿日時: 2003-03-30 08:41
GotFocus ではなく Enter ですね。ヘルプの Control.GotFocus のメモのところ(のひどい日本語)をよく読むと GotFocus は利用するなと書いてあります。

ちなみに,私は普段は C# なので次のようにやっています。VB.NET でも同じようにできるはず。

  • デザイン ビューでテキスト ボックスをクリック。
  • プロパティ ウィンドウにある雷のようなアイコンをクリック。
  • フォーカスの中に Enter という項目があるはずなのでその行をダブルクリック。
  • 新しくできたメソッド(プロシージャ)がイベント ハンドラになっている。

KIMERA
大ベテラン
会議室デビュー日: 2003/02/28
投稿数: 112
お住まい・勤務地: 兵庫県・大阪府
投稿日時: 2003-03-30 12:15
IZUMI Yusukeさん、ありがとうございます。
なるほど、低水準というのはそういうことだったんですね。
たしかにEnterというのもは目にしましたが、GotFocusのほうが言葉的に自然な気がしてそっちに気をとられていました。
また、Enterでイベントを起こした場合フォーカスがなくなった場合の処理としてはLeaveを使うようにしました。

大変参考になりました。
一郎
ぬし
会議室デビュー日: 2002/10/11
投稿数: 1081
投稿日時: 2003-03-30 16:02
確かに「Enter・Leaveを使え」って書いてありますね。
知らなかった・・・。

>プロパティ ウィンドウにある雷のようなアイコンをクリック
このアイコン、VB.NETのコードをいじっている時には出ないんですよね。どういう意図なのか分かりませんが。
1

スキルアップ/キャリアアップ(JOB@IT)