| | タイトル | : Re: フォーム間でデータの受け渡しをするには? |  | 記事No | : 3177 |  | 投稿日 | : 2006/02/24(Fri) 12:33 |  | 投稿者 | : 善蔵 | 
 [OSのVer]:Windows Xp    [VBのVer]:VB.NET   半年前のスレッド掘り起こしてしまってすみません。
 
 基本はFORTRAN使い、会社に入ってJAVAで遊び、VB(ver.4の時代)でもいくつかプログラミング経験があ
 って
 今回vb.netで仕事をしなくてはならず、似たようなデータ受け渡し法を模索したものです。
 
 検索するとだいたいpublicにしろとかそんな答えが多いようですが、オブジェクト指向的(カプセル
 化)にはナンセンスな解決方法だと思いますがいかがでしょうか?
 
 さて、このようなケースではformBを表示するにはFormbのインスタンスに対してShow()かShowdialog()
 メソッドを実行することになると思うのですが、このshowやshowdialogをオーバーロードしてあげれば
 いいと思います。
 
 具体的には(ShowDialogの場合)
 public class formB
 Inherits System.Windows.Forms.Form
 dim parameter as parameter_type
 dim etern_parameter as return parameter_type
 public OverLoads Function ShowDialog(byVal parameter as parameter_type,ByRef _
 retern_parameter as return parameter_type) as System.Windows.Forms.DialogResult
 Me.parameter= parameter
 Me.return_parameter=return_parameter
 ShowDialog()
 return_parameter=Me.return_parameter
 End Function
 
 Private Sub find()
 検索処理
 return_parameter=結果
 End Sub
 End class
 
 後はformAから呼び出す時にformB_instance.Showdialog(parameter,return_parameter)と呼び出すだけ
 これがMikeさんのイメージにぴったりだと思うのですが?
 
 この方法はWEB上で見かけなかったので、参考まで
 書き込ませていただきました。
 
 最後に、
 頭ごなしに検索したの?とかどこそこは見たの?というような表現は私は好きじゃないです。
 私もword検索しましたがひっかりませんでしたし、膨大な量の情報の中から必要な情報を引っ張り出す
 のはかなり大変なことですよね?
 
 管理人さんのポリシーだし、きちんと注事項で書かれているのでネチケット違反とは思いませんが
 見ていて悲しくなる人がいるということは知っていただきたいと思います。
 余計な口出しです。
 失礼いたします
 
 |