tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルフォームの継承
記事No4272
投稿日: 2006/09/19(Tue) 18:14
投稿者monmon
.net超初心者です。
フォームの継承について教えてください。

現在、BASEとなるForm1を作成し、同一プロジェクト内で継承してForm2を作成しました。
そして、Form2に(Form1で作成したコードに)コードを追加しようとしたところ
Form2にForm1で記述したコードが表示されません。

私の考えでは、Form1に大まかなプログラムの流れを作成し、
それを継承した後その流れに沿ってコードを修正・追加していけるものが継承だと思っています。
この考え自体が間違っているのでしょうか?
それとも継承の仕方が違うのでしょうか?

書籍や他のサイト等を検索しましたがフォームの継承について
詳しく解説されているものが見当たりませんでした。
ものすごく初歩的な質問なのかもしれませんが、どなたかご教授願います。

[ツリー表示へ]
タイトルRe: フォームの継承
記事No4273
投稿日: 2006/09/19(Tue) 20:06
投稿者るしぇ
> Form2にForm1で記述したコードが表示されません。
コードって言うかメンバが継承されるんですが。

'//Form1
Public Sub Test1()
    MessageBox.Show("Test1")
End Sub

'//Form2(Form1を継承)
Public Sub Test2()
    Call MyBase.Test1()
End Sub

'//Form3(スタートアップ)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim frm As New Form2
    frm.Show()
    frm.Test1()
    frm.Test2()
End Sub

> 私の考えでは、Form1に大まかなプログラムの流れを作成し、
> それを継承した後その流れに沿ってコードを修正・追加していけるものが継承だと思っています。
考えとか言わないでヘルプ(MSDN)見れば書いてありますが?
http://msdn2.microsoft.com/ja-jp/library/5x4yd9d5.aspx

> 書籍や他のサイト等を検索しましたがフォームの継承について
> 詳しく解説されているものが見当たりませんでした。
そんなこと無いでしょう。『継承 フォーム』のキーワードで
いくらでも引っ掛かりました。

[ツリー表示へ]
タイトルRe^2: フォームの継承
記事No4310
投稿日: 2006/09/24(Sun) 01:18
投稿者ヤマ@文系
るしぇ様のいっているとおりなのですが
>Form2にForm1で記述したコードが表示されません。
という部分が気になったので一応。
Form1が基本クラスで、Form2が派生ですよね?
これが継承ってやつだとおもうんですが
Form1のメンバをForm2で例えば、あるメンバなら、(protectedじゃない)
Form2側でForm1のそのメンバ(例えば変数xとか)が"使える"ということで、
表示されるわけではないです。。。付け加えたり、修正したりというのができるのが
派生クラスの方というか、継承だと思いますが。。?

[ツリー表示へ]