- - PR -
別フォームのボタンを押した時の処理
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2008-10-18 19:24
別フォームのボタンを押した時の処理
例えばですが、Form1 の Button1 をクリックした時に、Form2 を表示し Form2 にある Button1 をクリックした時にメッセージを表示するようにしたいです。 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Form2.Show() 'Form2 を表示 'Form2 の Button1 をクリックした時 MsgBox("Form2 の Button1 がクリックされました") 'メッセージを表示 End Sub End Class Form2 の Button1 をクリックした時の処理はどのようにすれば良いでしょうか? 一応、ダイアログの要領でやろうとしたのですが旨くいきませんでした。 恐れ入りますが、ご教授お願いします。 | ||||
|
投稿日時: 2008-10-18 23:04
モーダル表示であれば、ShowDialog メソッドで戻り値 DialogResult を見ることができますが、今回はモードレス表示ですので、Form1 側で Form2 の Close イベントもしくは Button のイベントを実装すれば良いです。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2008-10-19 10:13
じゃんぬねっとさんご返事有難うございます、何時もサイトの方参考にさせて頂いてます。
なるほど、モーダル表示でなければダイアログで値を見ることが出来ないのですね。 まだ具体的にどう実装すれば良いかは解ってませんが、これを手掛かりに頑張って調べてみます。 | ||||
|
投稿日時: 2008-10-19 15:39
解決しました
モーダル表示にさせれば簡単に出来そうだったので、モーダル表示にて解決出来ました。 (Form2 の Button1 プロパティの DialogResult の値を OK にしてます。) Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Form2を表示し、Form2 の Button1 をクリックした時 If Form2.ShowDialog() = Windows.Forms.DialogResult.OK Then MsgBox("Form2 の Button1 がクリックされました") End If End Sub End Class という感じの簡単な方法で旨く出来ました。 まだプログラム始めたてなので、ちょっとした事でつまずく毎日です; 本当に有難うございました、また何かあった時は宜しくお願いします。 |
1