AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi OnCreate aus weiterer Form heraus benutzen
Thema durchsuchen
Ansicht
Themen-Optionen

OnCreate aus weiterer Form heraus benutzen

Ein Thema von Svenkan · begonnen am 9. Aug 2007 · letzter Beitrag vom 12. Aug 2007
Antwort Antwort
Seite 1 von 2  1 2      
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#1

OnCreate aus weiterer Form heraus benutzen

  Alt 9. Aug 2007, 13:25
Folgendes: Ich habe einmal die THauptform, in der ein OnCreate-Ereignis festgelegt ist.
Nun möchte ich, sobald in TGrundeinstellungen das Fenster per Klick auf den 'OK'-Button geschlossen wird, dass das OnCreate-Ereignis aus der THauptform ausgelöst wird.
Ist dies möglich?
Sven Kannenberg
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#2

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 9. Aug 2007, 13:29
Da du anscheinend nur erreichen willst den Code aus dem OnCreate erneut auszuführen:

Lege dir eine Methode an der den Code aus OnCreate enthält. Diese Methode rufst du nun einmal im OnCreate auf und einmal wenn der Dialog mit ok verlassen wurde/wird.
  Mit Zitat antworten Zitat
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 9. Aug 2007, 13:36
Und wie erreiche ich, dass es sich dann auch auf THauptform auswirkt?
Wenn ich das Ganze in das OnClick-Ereignis schreibe, bezieht es sich doch auf TGrundeinstellungen..
Sven Kannenberg
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#4

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 9. Aug 2007, 14:08
Hi,

falsch verstanden.
Delphi-Quellcode:
procedure TForm1.MakeChanges;
begin
  // hier alles was zu tun ist
end;

procedure TForm1.FormCreate;
begin
  MakeChanges;
end;

procedure TForm1.Buttonclick;
begin
  Makechanges;
end;
oder an jeder anderen gewünschten stelle deines Codes.

Gruß oki
42
  Mit Zitat antworten Zitat
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 9. Aug 2007, 14:17
Ah!
Also der Code bleibt in THauptform, dann bindet man diese in TGrundeinstellungen ein und lässt das dann im OnClick-Event ausführen??

/edit: In der Hauptform fuktionierts prima, nur sobald ich diese in TGrundeinstellungen einbeziehen will, sagt er mir, dass er 'GetInfos' nicht kennt..
Sven Kannenberg
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#6

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 9. Aug 2007, 19:08
Hi Svenkan.

Um es strukturiert zu machen ist der Ansatz schon mal richtig. Der Code für die Änderungen wird wie gezeigt in eine eigene Procedure deines Hauptfensters ausgelagert. Der Aufruf im FormCreate erfolgt wie gezeigt.

Ich gehe mal davon aus, dass dein Einstellungsfenster modal angezeigt wird. In der Ereignisbehandlung des Buttons zum Öffnen deines Einstellungsfensters machst du folgendes:
Delphi-Quellcode:
procedure THauptform.EinstellungButtonClick(Sender : TObject);
begin
  Grundeinstellungen.ShowModal; // Fenster grundeinstellungen öffnen
  IF Grundeinstellungen.ModalResult = mrOK then
    MakeChanges;
end;
In deinem Fenster Grundeinstellungen nimmst du in die Ereignisbehandlung deines OK-Buttons folgendes mit auf:
  ModalResult := mrOK; Wenn du möchtest, dann kannst du für den Abbrechen-Button mrCancel zuweisen. Grundsätzlich geht es darum, dass Du ModalResult als öffentliche Eigenschaft je nach Aktion den passenden Wert zu weist. Öffentliche Eigenschaften deines Einstellungsfensters kannst du dann abrufen und auswerten (siehe Bsp.).

Gruß Oki
42
  Mit Zitat antworten Zitat
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 10. Aug 2007, 12:38
Hey Oki!
Danke für deinen Tipp!
Leider funktioniert es nicht, sprich: Beim Schließen per Klick auf OK, führt er es nicht aus.
Sven Kannenberg
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#8

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 10. Aug 2007, 12:45
Zitat von Svenkan:
Leider funktioniert es nicht, sprich: Beim Schließen per Klick auf OK, führt er es nicht aus.
Mit dem Debugger mal im OnClick des Buttons gestanden und geschaut ob er diese Zuweisung von ModalResult (wie oben angegeben) ausführt?
  Mit Zitat antworten Zitat
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 10. Aug 2007, 13:22
Zitat von Muetze1:
Zitat von Svenkan:
Leider funktioniert es nicht, sprich: Beim Schließen per Klick auf OK, führt er es nicht aus.
Mit dem Debugger mal im OnClick des Buttons gestanden und geschaut ob er diese Zuweisung von ModalResult (wie oben angegeben) ausführt?
Zumindestens geht er drüber, ohne einen Fehler auszugeben.
Sven Kannenberg
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#10

Re: OnCreate aus weiterer Form heraus benutzen

  Alt 10. Aug 2007, 13:34
Poste mal den Code aus deinem OK-button.
42
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz