tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^4: 複数のForm上の同名のコントロールに関しての処理をまとめるには
投稿日: 2007/08/09(Thu) 14:07
投稿者ひでと
すいません。良く理解できないのでもう少し教えてください。
  
> > しかし、FormAだけのコントロール TextBoxA とかFormBだけのButtonB などの
> > コントロールがあるため FormA,FormBは同じフォームを流用することができません。
>
> 共通処理部分を1つのクラスにまとめて、各フォームで継承するとか・・・
> #ちゃんと、対象オブジェクトが外部から見えるようにしないと
> #(Modifiers プロパティを変更しておかないと)駄目ですが・・・
>

「共通部分をクラスにまとめる」とは 別に共通部分のフォームを作成するのと
同じでしょうか?
(フォームでないとコントロールに 関係する処理でコンパイルできませんよね)

ということで、途中の報告をさせていただきます。
同じと考えて、今のフォーム Form0をコピーして別のフォーム Form1 を作ってみました。
Form1のコードの非共通部分を削除しました。

次にコンパイルできないSubとFunctionを作成フォーム Form1上でダミーの定義を
Public Overridable でつくりました。
またエラーになってしまう変数を作成フォーム Form1上で定義しました。

次にフォームの追加で 「継承されたフォーム」を選択して新しいフォーム Form2を
作成しました。
継承されたフォーム Form1上に、元のForm0の非共通部分のコードをはりつけ
Sub,Function を Public Overrides に変更しました。

この状態で Form1とForm2でのコンパイルエラーは消えています。
その後、非共通部分と共通部分の調整をいくつかしたところ、現状では動くように
なりました。
>
>
> > 単純に共通したプログラム部分を標準モジュールに貼り付けると、TextBox1やTextBox2,
> > Button1を参照できないためエラーになってしまいます。
>
> 「Modifiers プロパティ」が「Friend」のままだとか・・・

「継承されたフォーム」を選択して新しいフォーム を作成するようにしてしまいましたので
Modifilers プロパティをいじっておりません。
その為、今ひとつフォームのInherits を含めて理解できておりません。
通常はどのようにされるのでしょうか?
教えていただけるとたすかります。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。