none
初心者です ものすごく初歩の質問なんですが RRS feed

  • 質問

  • イベントの第二引数 e に入る?設定される情報っていうのは

    どこでどうしらべたらわかるのでしょうか・・・・

    例えばボタンイベントだと ボタンが押されている 離された など ありますよね

    他のイベントごとにも そのイベントで起こる情報がe変数の中に設定されるってことでいいのでしょうか?

    また そのeのなかに入る情報っていうのは どこでわかるのでしょうか?

    みなさんはひとつひとつ、このイベントにはどんな情報が e なかに入っているのかをしらべているのでしょうか?

    しらべないとわからないものですよね これって・・違うのかな・・・

    質問がへたすぎて ごめんなさい

     

    よろしくお願いします

     

    2010年12月21日 17:10

回答

  • そのような情報はMSDNに記載されています。

    例として、System.Windows.Forms.Button.Clickイベントのeを調べた手順を書いておきます。(あくまでも調べ方の1例です)

    1. MSDN Searchで「Button」を検索します。
    2. 「Button クラス (System.Windows.Forms)」をクリックします。複数のボタンがヒットしますが名前空間で判断します。この辺は最初は苦労するかもしれませんが、検索を繰り返すうちに次第に慣れてきます。
    3. Button クラス (System.Windows.Forms)ページ下部の「Buttonメンバ」をクリックします。
    4. Button メンバ (System.Windows.Forms)の「パブリックイベント」の「Click」をクリックします。
    5. Control.Click イベント (System.Windows.Forms)の「EventArgs」のリンクをクリックします。
    6. EventArgs クラス (System)ページ下部の「EventArgsメンバ」をクリックします。
    7. EventArgs メンバ (System)のページが表示されます。ここにお望みの情報が記載されています。

    慣れてくれば途中の手順をスキップしてすばやく探せるようになります。

     

     


    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月21日 19:45
  • J.Hashimotoさんが書かれている通り、MSDNを調べるのが基本です。Visual Studioをお使いだと思いますが、その場合でしたらEventArgsの単語中にカーソルを持って行って、F1キーを押してください。EventArgsのヘルプが表示されるはずです。

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月22日 0:12
    モデレータ
  • 外池と申します。

    ドキュメントを使った調べ方はJ.Hashimotoさんやtrapemiyaさんが回答されている通りです。

    私からはEventArgsについて少々。VB.shiritaiさんが例に挙げられたButtonのClickイベントで渡されるEventArgs eは、一番シンプルなもので、実は中身は殆ど何も無いです。

    同じButtonでもMouseDownイベントで渡されるものは「MouseEventArgs e」で、少し違います。同じ変数名「e」で表記されていますが、型(クラス)が違います(EventArgsとMouseEventArgsの違い)。後者のMouseEventArgsの場合は、e.Button、e.Clicks、e.Delta、e.Location、e.X、e.Yというマウスがどのように操作されてイベントが発生したのかを示す情報を内蔵しています。

    これはほんの一例でして、イベントの種類ごとに実に様々な「~EventArgs」という名前の型(クラス)の変数eが渡されて、そこに内蔵されている情報を活用できるようになっています。上手く活用するには、ドキュメントを丹念に調べていくしかありません。

    「なんだ! こんな情報がとれるなら便利だぁ!!」ということは私もしょっちゅうあります。逆に・・・、「なんでこのイベントの~EventArgsには、この情報が入っていないんだ・・・、使えねー」もしばしばですが。


    (ホームページを再開しました)
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月22日 1:01
  • ありがとうございました これからもよろしくおねがいします
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月22日 5:37
  • ありがとうございました これからもよろしくおねがいします。
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月22日 5:38

すべての返信

  • そのような情報はMSDNに記載されています。

    例として、System.Windows.Forms.Button.Clickイベントのeを調べた手順を書いておきます。(あくまでも調べ方の1例です)

    1. MSDN Searchで「Button」を検索します。
    2. 「Button クラス (System.Windows.Forms)」をクリックします。複数のボタンがヒットしますが名前空間で判断します。この辺は最初は苦労するかもしれませんが、検索を繰り返すうちに次第に慣れてきます。
    3. Button クラス (System.Windows.Forms)ページ下部の「Buttonメンバ」をクリックします。
    4. Button メンバ (System.Windows.Forms)の「パブリックイベント」の「Click」をクリックします。
    5. Control.Click イベント (System.Windows.Forms)の「EventArgs」のリンクをクリックします。
    6. EventArgs クラス (System)ページ下部の「EventArgsメンバ」をクリックします。
    7. EventArgs メンバ (System)のページが表示されます。ここにお望みの情報が記載されています。

    慣れてくれば途中の手順をスキップしてすばやく探せるようになります。

     

     


    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月21日 19:45
  • J.Hashimotoさんが書かれている通り、MSDNを調べるのが基本です。Visual Studioをお使いだと思いますが、その場合でしたらEventArgsの単語中にカーソルを持って行って、F1キーを押してください。EventArgsのヘルプが表示されるはずです。

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月22日 0:12
    モデレータ
  • 外池と申します。

    ドキュメントを使った調べ方はJ.Hashimotoさんやtrapemiyaさんが回答されている通りです。

    私からはEventArgsについて少々。VB.shiritaiさんが例に挙げられたButtonのClickイベントで渡されるEventArgs eは、一番シンプルなもので、実は中身は殆ど何も無いです。

    同じButtonでもMouseDownイベントで渡されるものは「MouseEventArgs e」で、少し違います。同じ変数名「e」で表記されていますが、型(クラス)が違います(EventArgsとMouseEventArgsの違い)。後者のMouseEventArgsの場合は、e.Button、e.Clicks、e.Delta、e.Location、e.X、e.Yというマウスがどのように操作されてイベントが発生したのかを示す情報を内蔵しています。

    これはほんの一例でして、イベントの種類ごとに実に様々な「~EventArgs」という名前の型(クラス)の変数eが渡されて、そこに内蔵されている情報を活用できるようになっています。上手く活用するには、ドキュメントを丹念に調べていくしかありません。

    「なんだ! こんな情報がとれるなら便利だぁ!!」ということは私もしょっちゅうあります。逆に・・・、「なんでこのイベントの~EventArgsには、この情報が入っていないんだ・・・、使えねー」もしばしばですが。


    (ホームページを再開しました)
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月22日 1:01
  • ありがとう ございました。これからもよろしくおねがいします。

     

    2010年12月22日 5:37
  • ありがとうございました これからもよろしくおねがいします
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月22日 5:37
  • ありがとうございました これからもよろしくおねがいします。
    • 回答としてマーク VB.shiritai 2010年12月22日 7:55
    2010年12月22日 5:38