Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Aus geöffnetem Formular Daten auf Elternformular ändern (https://www.delphipraxis.net/14232-aus-geoeffnetem-formular-daten-auf-elternformular-aendern.html)

Morfio 5. Jan 2004 11:54


Aus geöffnetem Formular Daten auf Elternformular ändern
 
Hi,

ich öffne mit einem Button auf einem Formular ein weiteres Formular. Von diesem möchte ich aber Eigenschaften auf dem ersten ändern.

In der implementation in den uses steht die Datei des ersten Formulares. Wenn ich jetzt im zweiten schreibe:

formular1.Edit1.Text := 'Irgendwas'

dann funktioniert es nicht, das Programm wird abgebrochen. Was mache ich falsch?

Vielen Dank,

Morfio ...

Leuselator 5. Jan 2004 12:04

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
so:
Delphi-Quellcode:
Unit U_HauptForm
uses U_UnterForm
type
  frmHauptForm = class(TForm)
  ...
  end;
...
implementation
...
und so:
Delphi-Quellcode:
Unit U_UnterForm
...
implementation
uses U_HauptForm
und dann kannst Du in U_UnterForm:
Delphi-Quellcode:
frmHauptForm.Irgendwas := Wert;
Gruß

schniede 5. Jan 2004 12:11

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
hallo!

das sollte aber auch so funzen ,bei mir klappt es jedenfalls!!



Code:
......
uses Unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
form2.showmodal;
end;


......
uses Unit1;

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);
begin
form1.edit1.text:='test';
end;
wenn du es so meinst jedenfalls.

mfg schniede

Morfio 5. Jan 2004 14:54

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

ja, wenn ich ein neues Projekt mache, geht das so auch. Allerdings funktioniert das in meinem jetzigen nicht, ich habe jetzt noch Ewigkeiten rumprobiert, es kommt aber immer der selbe Fehler.

Von Formular 1 kann ich ohne Probleme auf Formular 2 zugreifen, von 2 auf 1 aber nicht, obwohl dort

Delphi-Quellcode:
implementation

uses adressebearbeiten;
steht. Die Autovervollständigung gibt mir auch alle Prozeduren, Eigeschaften, usw. von Formular 1 und er kompiliert auch durch. Allerdings sobald die Aktion ausgeführt werden soll stürzt er ab.

Es ist eine Menge (schlechter) Quelltext, aber ich hänge ihn mal an, vielleicht sieht einer ja direkt den Fehler ...

Einfach mal nach dem String HIER STÜRZT ER AB suchen, an der Stelle stürzt er nämlich ab.

Verzweifelnd,

Morfio ...

sakura 5. Jan 2004 14:59

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
Kannst Du den Code mal als Anhang liefern. Das ist einfach zu viel um es so zu überblicken :shock:

...:cat:...

Morfio 5. Jan 2004 15:06

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
Klar (:

schniede 5. Jan 2004 15:19

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
dein quelltext

Code:
     frmAdresseBearbeiten.Enabled := true; // HIER STÜRZT ER AB
sollte dort nicht stehen

Code:
frmAdresseBearbeiten.showmodal;
mfg schniede

Morfio 5. Jan 2004 15:23

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
Zitat:

sollte dort nicht stehen

Code:
frmAdresseBearbeiten.showmodal;


mfg schniede
Eigentlich nicht. Man öffnet über das erste Formular das zweite, wählt aus einer Liste was aus, drückt auf einen Knopf, der soll dass Formular dann schließen und das 1 Formular enablen (geiles Denglisch (: ).

Viele Grüße,

Morfio ...

Leuselator 6. Jan 2004 04:04

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
Also Du hast da, glaube ich, einen ziemlichen Knoten im Kopf - oder ich hab ihn :-).
Wie wäre es mit:
Delphi-Quellcode:
// in Formular1:
procedure TFormAdresseBearbeiten.AuswahlClick(Sender : TObject);
begin
  if FormAuswahl.ShowModal = mrOk then begin
    // reagiere auf die Auswahl...
  end;
end;

//und in Formular2:
procedure TFormAuswahl.MacheEsJetztClick(Sender : TObject);
begin
  FormAuswahl.ModalResult := mrOk;
end;

procedure TFormAuswahl.LieberDochNichtClick(Sender : TObject);
begin
  FormAuswahl.ModalResult := mrCancel;
end;
Du kannst das Formular instantiieren, ohne es anzuzeigen, kannst auf Eigenschaften des Formulares zugreifen etc und wenn der User es zu sehen bekommen soll, gehst Du wie im 1. Abschnitt oben gezeigt vor.

Gruß

Morfio 6. Jan 2004 07:47

Re: Aus geöffnetem Formular Daten auf Elternformular ändern
 
Hi,

ich habe ein MDI-Programm. Da funktioniert das mit ShowModal irgendwie nicht, weil ich dem MDI zugeordnete Fenster nicht auf invisible stellen kann.

Zitat:

Also Du hast da, glaube ich, einen ziemlichen Knoten im Kopf - oder ich hab ihn
Momentan muß ich zugeben, daß ich den habe. Morgen geht's ab auf eine Delphi-Schulung ..., daß hat sonst alles keine Zweck .. mein Kopf ist derzeit ziemlich zu.

Vielen Dank an alle,

Morfio ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:04 Uhr.
Seite 1 von 2  1 2      

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