• 締切済み

自分のクラスにイベントを入れたいです。

cradollの回答

  • cradoll
  • ベストアンサー率50% (7/14)
回答No.1

http://msdn.microsoft.com/ja-jp/library/5z57dxz2(v=vs.80).aspx こんな感じです

Koeii
質問者

お礼

方法はあるんですが処理速度が遅い。 ベーシックだからしょうがない。? msdn でも質問してみます。 なにか良い方法があれば こちらでも質問待機中なんでヨロシク(*^^*ゞ

関連するQ&A

  • VC++:pictureBoxにイベントなしで描画

    前略 ・ Visual Studio 2012 のVC++を使っています。 フォームに貼り付けたピクチャーボックスに、フォームが表示された時にボタンクリック等特にイベントを発生させないでも 描画したいのですができません。 どなたか教えていただければ幸いです。  以下の例で具体的に教えてください。 ボタンもフォームに貼りつけてボタンクリックイベントの中に以下のようにコーディングしてボタンをクリックすると円が描けます。 どのようにすれば、ボタンクリックしないでもフォームが表示された時に、円がピクチャーボックスの中に描画されているようになるのででしょうか?    private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { // 描画を行うグラフィックスクラスを生成 Graphics^ g = pictureBox1->CreateGraphics(); //円の描画 Pen^ blackPen = gcnew Pen(Color::Black, 3); g->DrawEllipse(blackPen, 50, 50, 75,75); //基点(50,50) 幅×高さ:75×75  } 以上、よろしくお願いします

  • CListView クラスのタイトル部分をクリックしたときのイベントは?

    VC6.0のMFCでプログラムしています。 あるウィンドウにCListView クラスの派生クラスを作成して貼り付けています。 このタイトル部分をマウスでクリック(ドラッグして幅を変更)した時のイベントはどのようにすれば拾えるのでしょうか? WM_LBUTTONDOWN イベントですと、タイトル下の一覧をクリックしたときには拾えるのですが、タイトル部分をクリックしても拾えません。 すみませんがよろしくお願いします。

  • ボタンとイベント

    Visual Basic 2008 Express Editionで、 ボタン1をクリックしたらイベント1が発生し、 もう一度ボタン1をクリックしたらイベント2が 発生するようにするには、どう書けばいいですか?

  • 作ったクラスにイベントを追加するには?

    パネルを継承したクラスを作りました(パネルA)。 そのパネルAをメインフレームに作成しました。 作ったパネルAの上にサブパネルBを作りました。 サブパネルのイベントを書きたいのですがコードは作ったクラス内に書けないのでしょうか? 例)下記が作ったパネル継承クラスです。この中でpnlSubを作っているのです。で、このpnlSubのクリックイベントを書きたいのですが、どのようにイベントを用意すればよいのでしょう? package ### import java.awt.*; public class PanelA extends Panel{ Image im; Panel pnlSub = new Panel(); //CONSTRUCT public PanelA(String img) { im = Toolkit.getDefaultToolkit().getImage(img); //MediaTracker画像入力監視 MediaTracker mt = new MediaTracker(this); mt.addImage(im, 0); try { mt.waitForID(0); } catch (InterruptedException e) { } //パネル(pnlVolume)設定 this.add(pnlVolume, null); pnlSub.setBackground(Color.red); pnlSub.setBounds(new Rectangle(5, 8, 108, 5)); } //Print public void paint(Graphics g) { if (g.drawImage(im, 0, 0, this) != true) { System.out.println("ng"); } } }

    • ベストアンサー
    • Java
  • クラス内に自作のイベントを定義したい VB2005

    VB2005を使っています。 クラス内に自作のイベントを定義したいのですがどうすればよいのでしょうか? 非同期のソケットから帰ってきた場合に発生させるイベントです。 System.Net.Sockets.TcpClient System.Net.Sockets.NetworkStream 以下のようにループでなくイベントで処理させたいです。 Do If .DataAvailable Then             ... End If My.Application.DoEvents() Loop

  • イベントリスナーのクラスの書きどころ

    まだまだ勉強したての超初心者で拙い質問ですが、宜しくお願い致します。 AWTのFrameクラスで参考書など何も無く勉強をしていたのですが、 イベントリスナーのクラスをどこに記述するのが一番良いのか、分かりません。 BaseFrameクラス、AFrameクラス、BFrameクラスが存在し、AFrame、BFrameはBaseFrameを継承しているとします。 windowOpened()の基本となる動作(「abc」という文字列を出力とする)はBaseFrameクラスの内部クラスに記述、 その後、AFrameクラスから実行されたFrameの場合は「abc」と出力された後に「def」と出力したい。 BFrameクラスから実行されたFrameの場合は「ghi」と出力された後に「abc」と出力したい。 とした時、AFrameクラスの方はAFrameの内部クラスで定義し、addWindowListener()により追加すれば実現出来たのですが、 BFrameクラスの場合は初めにBaseFrameクラスのwindowOpened()が実行されるので実現出来ません。 とすると、BaseFrameクラスにあるイベントリスナーの内部クラスから、 AFrame・BFrameクラスで実現したいイベントリスナーのクラスまで、 全てを完全に切り分けた方が良いのか?(切り分ければ可能だと思った) しかし、そうすると、他のコントロールについても同じ対応が必要であり、 コントロールとイベントの関連性が不透明化しないか?などと考えてしまい、 どうするのが一番か悩んでいます。どなたかご教示下さい。

    • ベストアンサー
    • Java
  • シートのクリックイベントは拾えないのか?

    ExcelのVBAに関する質問です。 さきほど「セルをクリック、またはダブルクリックしたときに○○したい」という質問に回答したのですが、「セルをクリックした」というイベントを拾う方法がわからず、ダブルクリックのパターンで回答しました。 Worksheetのイベントには BeforeDobuleClick や BeforeRightClick はあるのに Click や onClick というイベントがありません。オートシェイプなどのオブジェクトやフォーム上のオブジェクトには Click イベントがあるのですが、Worksheet になぜかありません。 これまでも同様のケースがあり、ネットで検索したりしたのですが、どれも SelectionChange で代用するものでした。それだと確かにマウスで別セルを選択したときにイベントが発生しますが、 ・キーボード操作でセルを移動してもイベントが発生する ・現在選択しているセルをクリックしてもイベントが発生しない と、厳密はマウスでクリックしたときと同じ動作になりません。 確か以前の質問で「あるセルをクリックするたびに、他のセルの値をカウントアップしたい」というようなものもありました。このような場合には、やはり Click に相当するようなイベントで処理したいです。 どうにかしてWorksheetでクリックイベントを拾うことはできないのでしょうか?

  • comboboxのクリックイベントについて

    VB6です comboboxを設置してクリックイベントに処理を書いたら、フォームロード時に必ず1回クリックイベントが発生します。 当初はフラグを立ててこの現象を回避していたのですが、コードを書くうちに、この最初のクリックイベントが面倒で仕方ありません。 comboboxを設置するとフォームロード時に必ずクリックイベントが発生するのはVB6の仕様なのでしょうか。 それともほかに回避の仕方があるのでしょうか。

  • C++ビルダーでイベント付きスレッドクラスを作成したい

    C++系(主にボーランドビルダー)でVBの様なイベント付きクラスを作成したいのです。 単なるスレッドクラスの定義は: //---------------------------------------------- // クラス // スレッドクラスより派生 //---------------------------------------------- class CUserClass : public TThread { private: AnsiString aa; HANDLE hr; // ハンドル protected: HWND FormHandle; // 親フォームハンドル void __fastcall Execute();// スレッドメイン処理 public: __fastcall CUserClass(bool,AnsiString ,HWND ); // コンストラクタ __fastcall ~CUserClass(); // デストラクタ }; でいいのですが・・・。 何かクラス側で変化があったとき、クラスを使う親側モジュールにイベントを発生させたいのですが。 クラス側から親側に SendMessage( 親側ハンドル, 送りたいメッセージ, 0, 0 ); でメッセージを送る方法があるのですが、これだと親側がクラスでないといけないし、送りたいメッセージが固定となるし・・・。 よい方法を教えてください。

  • CellEnterイベント仕様について

    DataGridViewのCellEnterの仕様で下記の仕様がありますが、 「コントロールに入力フォーカスがなく、クリックされたセルが以前に現在のセルではなかった場合、 このイベントが 1 回のクリックに対して 2 回発生することがあります。」 この件で困っています。 2回イベントが発生する場合は、下記のような動作になっています。 1回目:前回セル位置情報でイベントが発生 2回目:今回セル位置情報でイベントが発生 また、1回のみの発生の場合は、 1回目:今回セル位置情報でイベントが発生。 となっています。 このイベントで、 前回のセル情報で発生したのか、今回のセル情報で発生したのか 区別したいのですが よい方法はありませんか? 現状は、Enterイベントでフラグを立てて 「コントロールに入力フォーカスがなく」の条件は判断できていますが、 「クリックされたセルが以前に現在のセルではなかった場合」を判断する方法が 分からない状態です。 よろしくお願いします。