2011-12-18 4 views
0

私はバルーンチップのためにNotifyIconが添付された私のメインフォームを持っています。私はバルーンに入るものを決定するために何らかの処理を行う別々のBalloonTipクラスを持っています。 BalloonTipクラスのメインフォーム/クラスでnotifyIconを使用するにはどうすればよいですか?NotifyIconが別のクラスにある間に、あるクラスのバルーンチップを使用できますか?

編集:私は参照

//passing data to my balloon class 
ShowBalloonTip(data, ref notifyIcon1); 

//not sure how to receive the notifyicon here 
public void ShowBalloonTip(string s, object notifyicon) 

によって任意の提案を通知アイコンに合格するかどうかはわかりませんか?

+4

NotifyIconへの参照をBalloonTipインスタンスに渡します。 –

+0

私はそれを行う方法がわかりません。更新のための私のopを見てください。 –

+1

それはかなり基本的です。 'NotifyIcon'型のパラメータを取る' BalloonTip'クラスのメソッドが必要です。 'ref'や' object'などはありません。 'DoSomething void(NotifyIcon notifyIcon);' –

答えて

1

NotifyIconへの参照をBalloonTipクラスに渡すだけです。私はあなたのBalloonTipクラスがどのようなものか知らないが、基本的に次のようなメソッドを追加する必要があります。

void DoSomething(NotifyIcon notifyIcon); 

別のオプションは、まったく同じように、BalloonTipコンストラクタに通知アイコンを渡すことであってもよく、参照のコピーを作成します。これは、通知アイコンに繰り返しアクセスする必要がある場合に意味があります。

ただし、これは2つのクラスを緊密に結合しています。通知アイコンを使用せずにバルーンチップを使用する必要がある場合は、制限することがあります。

さらに別のオプションは、メインフォームクラスの通知アイコンから情報を抽出し、バルーンチップクラスに渡すことです。これにより、2つのクラスが分離され独立した状態に保たれます。もちろん、バルーンチップが通知アイコンのメソッドを呼び出す必要がある場合、その方法は機能しません。

+0

notifyiconに繰り返しアクセスする必要があります。通知アイコンから情報を抽出することはどういう意味ですか? –

+0

NotifyIconのいくつかのプロパティを知る必要がある場合は、それらを渡すことができます。 NotifyIconのメソッドを呼び出す必要がある場合、それは動作しません。あなたがやろうとしていることを正確に実行するのはちょっと難しいと思っていますので、私はちょっと慌てています。 –

+0

私はメインフォームと設定フォームを持っています。私はnotifyIcon1を持っているメインフォームに添付されています。バルーンプロンプトを表示するためにnotifyIcon1を使用しようとしています。私が取り組んでいる問題は、BalloonTipというクラスがあることです。いずれかのフォームから異なるイベントが異なる文字列をBalloonTipクラスに送信します。そのクラスには、入ってくるデータに基づいてテキストのタイトルと本文を割り当てるswitch文があります。私は、これが、複数のバルーンチップを投げる複数のフォームに対処する最もクリーンな方法であると考えました。 –

関連する問題