掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
自動生成していないFormからの参照のエラーを回避するには? (ID:47271)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
いつもお世話になります。 XE7.1のwin32でテストしていて、 「モジュール'xxx.exe'のアドレス xxxxxxでアドレスyyyyyに対する 読み込み違反がおきました」 となります。 Formが3コあり、メインはForm1で自動生成がForm1とForm3です。 Form1からForm2を呼び出して、Form3のコンポーネントを参照しています。 Form2の1度目の呼び出しからのForm3のコンポーネント参照ではエラーが出ません。 2度目からの呼び出しでの参照では上記エラーとなります。 元々Form2も自動作成でした。Form2が呼ばれたときと閉じたときの変更内容を 取得したくてForm2の自動生成をやめました。 以下がForm1での記述です。 procedure TForm1.FormCreate(Sender: TObject); begin Form2 := nil; end; procedure TForm1.Button1Click(Sender: TObject); begin if not Assigned(Form2) then Form2 := TForm2.Create(Application); Form2.Show; end; 以下がForm2での記述です。 procedure TForm2.ButtonListDispClick(Sender: TObject); var i : integer; item : TListboxItem; begin with Form3 do begin //リストをクリア SelectList.Clear; //ここでエラーになる SelectList.BeginUpdate; 〜したい処理 省略〜 end; //with end; procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := TCloseAction.caFree; Form2 := nil; end; ご教授いただけませんでしょうか。 宜しくお願いいたします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.