掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
孫フォームからのクラスの呼び出しについて (ID:39701)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
KForm1,KForm2はどちらも同じクラスなのでしょうか? type TKForm1 = class(TForm) TKForm2 = class(TForm) こういう状況なら if AOwner is TKForm1 then begin TKForm1(AOwner).StringGrid end else if AOwner is TKForm2 then begin TKForm1(AOwner).StringGrid end; のようにアクセスできます。OwnerでもParentでも判定方法は同じです。 こういった判定が使えない場合 var KForm1:TForm KForm2:TForm どちらも TForm だったりするなら Tag を使うという手もあります。 TForm 生成時に TForm.Tag に クラスに応じて 値を割り振っておけば MForm で Tag を読み出せばどちらなのかわかりますが 共通でないプロパティやメソッドに関しては、型がわからないので読み出せません。 case TForm(AOwner).Tag of 1: TForm(AOwner).StringGrid < エラー end; 他にはTFormにもある ComponentsやControlsプロパティが使えます。 for i:=0 to Owner.ControlsCount-1 do begin if Owner.Controls[i] is TStringGrid then begin TStringGrid(Owner.Controls[i]).xxx := xxx; end; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.