AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Form und Frame kommunikation

Ein Thema von youuu · begonnen am 25. Nov 2012 · letzter Beitrag vom 26. Nov 2012
Antwort Antwort
Seite 1 von 2  1 2      
youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#1

Form und Frame kommunikation

  Alt 25. Nov 2012, 21:15
Hi ich habe mal eine Frage bezüglich Frames und Forms.

Also ich habe eine Main Form.
Mit dieser erstelle ich eine 2. Form(Second) auf der ein Frame liegt. Das kommunizieren von Form Second und dem Frame ist kein Problem.

Wenn ich nun aber Form Second noch ein 2. mal dazu erstelle, kommuniziert der Frame von Form Second 1 auch mit Form Second 2.
Wie muss ich vorgehen um dies zuverhindern und jeder Frame sein Owner Form kennt?
Steven
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Form und Frame kommunikation

  Alt 25. Nov 2012, 21:33
Eigentlich ist das kein Problem.

Zeig mal den Code wo die beiden kommunizieren sollen/wollen
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.336 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Form und Frame kommunikation

  Alt 25. Nov 2012, 21:37
Hast Du jede Formularinstanz in einer eigenen Variable gespeichert?
Dann müsstest Du beide getrennt ansprechen können.

Falls Du jedoch nach Komponentennamen suchen solltest, könnte es evtl. zu Unklarheiten kommen.

Wie Sir Rufe meinte: Sage mal etwas mehr, was Du genau machst.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#4

AW: Form und Frame kommunikation

  Alt 25. Nov 2012, 21:39
Über den Parent des Frames sollte doch schon eine entsprechend geeignete Referenz zur Verfügung stehen, vorausgesetzt die Frames liegen direkt auf den Formularen, und nicht z.B. in Panels (oder gar Kaskaden von Panels).
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#5

AW: Form und Frame kommunikation

  Alt 25. Nov 2012, 21:41
Ja es sind die gleichen Namen :/

Form Second 1 (gleiche Name)+ Frame --> nun soll dieser Frame eine Edit von Form Second 1 auslesen, alleridngs ließt es nun von Form 2 Second das Edit aus.
Form Second 2 (gleiche Name)+ Frame
Steven
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.336 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Form und Frame kommunikation

  Alt 25. Nov 2012, 21:50
Ich vermute, dass Du die Formularinstanzen nicht korrekt verwaltest.
Müsste in etwa so sein:

Delphi-Quellcode:
F1 := TMyForm.Create(Self);
F1.Color := clGreen;
F2 := TMyForm.Create(Self);
F2.Color := clRed;
Über F1.MyFrame... und F2.MyFrame... solltest Du dann beide ansprechen können.
Über die Farben kann man mal schnell kontrollieren, worauf man eigentlich gerade zugreift.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Form und Frame kommunikation

  Alt 25. Nov 2012, 22:02
Eleganter ist das natürlich zu lösen, wenn die Frames nicht auf die Form zugreifen, sondern wenn die Form dem Frame (über eine Frame-Property) mitteilt worauf zugegriffen werden soll.

Dann ist es dem Frame egal, worin man den einbettet.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.114 Beiträge
 
Delphi 12 Athens
 
#8

AW: Form und Frame kommunikation

  Alt 25. Nov 2012, 22:46
Eleganter ist das natürlich zu lösen, wenn die Frames nicht auf die Form zugreifen, sondern wenn die Form dem Frame (über eine Frame-Property) mitteilt worauf zugegriffen werden soll.

Dann ist es dem Frame egal, worin man den einbettet.
Genau.

Betrachte das Frame einfach wie ein Edit.

- die Form kann mit dem Frame machen was sie will
- und wenn das Frame etwas mitteilen will, dann bietet es der Form ein passendes Event (ala OnChange), wo sich die Form dann reinhängen kann
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#9

AW: Form und Frame kommunikation

  Alt 26. Nov 2012, 09:29
Naja, also.

Ich habe ein Programm, welches Kundendaten verwaltet.
Wenn ich einen Datensatz aufrufe wird das "Second Form" erstellt. Wenn ich einen 2. Datensatz öffne wird wieder ein "Second Form" erstellt.

Ich kann also denen keine 2 unterschiedlichen Namen verpassen, da es ein und die selbe procedure ist.
Das Frame ist in einer Pagecontrol eingebettet mit wiederum einem Virtualstringview, in dem Daten ausgegeben werden, die auf der "Second Form" stehen (Kundennummer wird sich vom Second Form geholt um Daten in VST einzubetten.)

Ich wüsste jetzt also nicht wie ich das Frame als Edit verwenden soll.
Gibts da Tipps für?

Bei einer Form zu Form, übergebe ich immer einefach eine Variable an die 2. Form, die im Privat Bereich deklariert habe.
Aber das geht in einem Frame nicht oder, da ich das Frame ja nicht erst seperat erstelle.
Steven

Geändert von youuu (26. Nov 2012 um 09:32 Uhr)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#10

AW: Form und Frame kommunikation

  Alt 26. Nov 2012, 10:00
Delphi-Quellcode:
procedure fraMyFrame.Button1Click(Sender: TObject);
begin
  (Parent as TSecondForm).edSomeEdit.Text := 'foo';
end;
Greift bei mir wunderbar immer nur auf das "TSecondForm" zu, auf dem das Frame auch wirklich liegt.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  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 07:14 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