掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
動的に生成したフォームへの値の渡し方 (ID:36046)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
再びお世話になります。よろしくお願いします。つまずいているのは次の通りです。 1,メインフォームとサブフォームはデザイン時に設定。 2,実行時にサブフォームの複製を何個か生成する。(全くのコピー)。 3,元のサブフォームと複製したフォームにそれぞれメインフォームから異なっ た値を渡す。 4,具体的には、各サブフォーム上にチャートを置き、メインフォームで作成し たデータを種類別に各サブフォームのグラフに表示させるというものです。 データ1はサブフォーム0へ、データ2はサブフォーム1へという感じです。 コードは以下の通りです。 ****メインフォーム於いて****** .... implementation uses Subfrm (サブフォーム側ではMainfrm) var n : integer; // サブのコピー生成数 SForm : TSubfrm; //サブのコピー K : integer; //データカウンタ //サブのコピー生成 // procedure TForm1.CloneClick(Sender: TObject); begin SForm := TSubfrm.Create(Application); with SForm do begin Width := Subfrm. Width; Height := Subfrm.Height; Name := 'Subfrm' + IntToStr(n); Caption := Name; end; SForm.Show; Inc(n); end; //サブフォームに渡す // procedure TForm1.TESTClick(Sender: TObject); var i : Integer; FName : string; //複製フォーム名 begin for i := 0 to Screen.FormCount-1 do begin FName := 'SForm' + IntToStr(i); if Screen.Forms[i].Name = FName then SForm.AddPoint(K-1,Random(100),clRed); // サブのAddPoint手続 end; ....... これでは上手くいきません。呼び出すフォームがこれでは確定できないからだと思うのですが、確定する方法が解りません。 そもそも、この思想ではダメなのでしょうか? どなたかよろしくお願いします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.