AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi MDI: Auf Komponente des Childs zugreifen
Thema durchsuchen
Ansicht
Themen-Optionen

MDI: Auf Komponente des Childs zugreifen

Ein Thema von Yan · begonnen am 6. Jan 2005 · letzter Beitrag vom 6. Jan 2005
Antwort Antwort
Yan

Registriert seit: 26. Sep 2003
Ort: Aachen
129 Beiträge
 
Delphi 7 Personal
 
#1

MDI: Auf Komponente des Childs zugreifen

  Alt 6. Jan 2005, 11:59
Hi @all!

Mal wieder eine MDI-Frage. Ich hab' leider in der Suche nicht gefunden. Also:

Wie kann ich von der Haupt-Form auf eine Komponente zugreifen, die auf dem MDI-Child liegt?

Mit ActiveMDIChild komme ich ja an das aktive Fenster. Zumindest der OH nach zu schließen. Aber wie komme ich jetzt an die Komponente?

Vielen Dank schonmal,
Yannick F.
mfG - Yannick
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#2

Re: MDI: Auf Komponente des Childs zugreifen

  Alt 6. Jan 2005, 15:16
Moin!

Da ActiveMDIChild vom Typ TForm ist, musst du erstmal einen typecast auf die Klasse deines MDI Childs machen, diese kennt dann auch deine Komponenten.

MfG
Muetze1
  Mit Zitat antworten Zitat
Yan

Registriert seit: 26. Sep 2003
Ort: Aachen
129 Beiträge
 
Delphi 7 Personal
 
#3

Re: MDI: Auf Komponente des Childs zugreifen

  Alt 6. Jan 2005, 15:31
Aah ja...

Und was heißt das, ich meine das Typecasting?
Könntest du mir das kurz erklären?

Vielen Dank,
Yannick F.
mfG - Yannick
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#4

Re: MDI: Auf Komponente des Childs zugreifen

  Alt 6. Jan 2005, 15:35
Ganz einfach

  (ActiveMDIChild.FindComponent('Button1') AS TButton).Click; müssen noch abfragen ob gefunden und so rein.
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Yan

Registriert seit: 26. Sep 2003
Ort: Aachen
129 Beiträge
 
Delphi 7 Personal
 
#5

Re: MDI: Auf Komponente des Childs zugreifen

  Alt 6. Jan 2005, 15:37
Danke! Das hilft mir schon eher weiter.

[EDIT]Mein 100ster Beitrag!! [/EDIT]
Yannick F.
mfG - Yannick
  Mit Zitat antworten Zitat
bigg
(Gast)

n/a Beiträge
 
#6

Re: MDI: Auf Komponente des Childs zugreifen

  Alt 6. Jan 2005, 15:47
Warum rufst du in deinem Beispiel FindComponent auf?

Code:
var Button: TButton;
begin

if Self.MDiChildCount > 0 then
Button := (Self.ActiveMDIChild as TForm2).Button1;

end;
Bei bedarf kann man hier auch noch auf nil prüfen.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#7

Re: MDI: Auf Komponente des Childs zugreifen

  Alt 6. Jan 2005, 16:16
Oder:

TMDIFormName(ActiveMDIChild).Button1Click; @bigg

ich weis. Es ist ja nur der reine Code.

Man kanns auch so machen:

Delphi-Quellcode:
if ActiveMDIChild is TMDIFormName then
  TMDIFormName(AcitveMDIChild).Button1Click;
  Mit Zitat antworten Zitat
bigg
(Gast)

n/a Beiträge
 
#8

Re: MDI: Auf Komponente des Childs zugreifen

  Alt 6. Jan 2005, 16:19
Und was ist wenn gar kein Child geöffnet ist?
dann bekommst du nämlich so rote Fehlermeldungen.

PS: Button ist in meinem Beispiel nur ein Zeiger auf TButton
  Mit Zitat antworten Zitat
Antwort Antwort


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:53 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