![]() |
Code wird ausgeführt, obwohl das nicht sein sollte
Hi,
ich hab grad nen komischen Problem :roteyes: . Also, ich hab eine MDI-Form (Main), ein Child (Doc) und die Optionen Form (Option). In der Main hab ich den Code:
Delphi-Quellcode:
Option:
procedure Tfmain.tbOptionenClick(Sender: TObject);
begin fOption.ShowModal; end;
Delphi-Quellcode:
Soweit alles klar.
procedure TfOption.FormShow(Sender: TObject);
begin LoadOption; end; procedure TfOption.LoadOption; begin Storage.RestoreFormPlacement; Optionen.NewDocAtStart := cbNewDocAtStart.Checked; if gbEditor.ItemIndex = 0 then Optionen.Editor := etRichText else Optionen.Editor := etCode; Optionen.Font.Name := cbSchriften.Text; Optionen.Font.Size := seSize.Value; end; Jetzt wird aber noch der Code ausgeführt:
Delphi-Quellcode:
Daraufhin bekomm ich eine Zugriffsverletzung, weil er auf Optionen.Font zugreifen will, aber zu diesem Zeitpunkt noch nicht definiert ist. Das komische ist nun, ich klicke auf den Button um die Optionen zu öffnen, aber der Code um ein MDIChild zu erstellen wird auch ausgeführt. Liegts vielleicht an der TFormStorage der RxLib?
procedure Tfmain.tbNeuClick(Sender: TObject);
begin Application.CreateForm(TfDoc, fDoc); end; |
Re: Code wird ausgeführt, obwohl das nicht sein sollte
Hi!
Was steht denn im OnCreate der TfDoc drin? Ciao Frederic |
Re: Code wird ausgeführt, obwohl das nicht sein sollte
Hi,
das hier:
Delphi-Quellcode:
begin
Inc(MDICount); Caption := 'Unbenanntes Dokument ' + IntToStr(MDICount); FModified := false; if Optionen.Editor = etRichText then begin pcPages.ActivePageIndex := 0; FEditor := etRichText; fmain.cbSchriften.Enabled := true; end else begin pcPages.ActivePageIndex := 1; FEditor := etCode; fmain.cbSchriften.Enabled := false; end; RichEdit.Font := Optionen.Font; fmain.cbSchriften.ItemIndex := fmain.cbSchriften.Items.IndexOf(Optionen.Font.Name); end; |
Re: Code wird ausgeführt, obwohl das nicht sein sollte
Hi,
hab den Fehler gefunden. Hatte vergessen bei Optionen.Font das TFont zu erstellen :stupid: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz