AGB  ·  Datenschutz  ·  Impressum  







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

Bestimmtes MDI-Child finden... ?!?

Ein Thema von lorrey · begonnen am 11. Jan 2005 · letzter Beitrag vom 11. Jan 2005
Antwort Antwort
lorrey

Registriert seit: 29. Jul 2003
42 Beiträge
 
Delphi 7 Professional
 
#1

Bestimmtes MDI-Child finden... ?!?

  Alt 11. Jan 2005, 10:33
Hallo zusammen!

Folgendes Problem:

Ich habe eine MDI Applikation, in der mehrere MDI-Childs offen sind, davon ist logischer weise nur eins aktiv...
von diesem möchte ich nach einem bestimmten Child namens "Hugo" suchen, die Form "Hugo" kann aber mehrfach offen sein,
also bräuchte ich noch die "z-Order" von den offenen MDI-Childs, so das ich quasi den zu letzt geöffenten "Hugo" finde!

Hat das von Euch schon mal jemand gemacht?!?
Wäre Euch echt dankbar, wenn Ihr mir helfen könntet!

Gruss
lorrey
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

Re: Bestimmtes MDI-Child finden... ?!?

  Alt 11. Jan 2005, 10:38
Hi lorrey,

Delphi-Quellcode:
for i := Pred(MDIChildCount) downto 0 do
  if MDIChildren[i].ClassName = 'Hugothen
  begin
    ShowMessage('Hugo gefunden!');
    Break;
  end;
MfG
Stevie
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
lorrey

Registriert seit: 29. Jul 2003
42 Beiträge
 
Delphi 7 Professional
 
#3

Re: Bestimmtes MDI-Child finden... ?!?

  Alt 11. Jan 2005, 12:17
Hi Stevie!

Danke für die schnelle Hilfe!
Ich musste nur die Schleife rum drehen dann ging es... !!!
(Wenn man runter zählt, gibt er leider nicht den letzten aktiven aus)
Code:
for i := 0 to MDIChildCount -1 do
So geht es auf jeden Fall - vielen DANK!
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

Re: Bestimmtes MDI-Child finden... ?!?

  Alt 11. Jan 2005, 12:19
Oh, ich dachte, er fügt das letzte immer hinten an...
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von sECuRE
sECuRE

Registriert seit: 10. Apr 2003
Ort: Heidelberg
360 Beiträge
 
Delphi 7 Professional
 
#5

Re: Bestimmtes MDI-Child finden... ?!?

  Alt 11. Jan 2005, 14:36
Hi,

das zuletzt erstellte kannst du finden, indem du so vorgehst:
Delphi-Quellcode:
// THugoForm ist deine Formklasse und braucht eine public-eigenschaft CreateTime:TDateTime;
function TForm1.FindLastChild:THugoForm;
var times:array of TDateTime; c:integer;
begin
ins:=1;
for c:=0 to (MDIChildCount-1) do
  if (MDIChildren[c] is THugoForm) then
    Inc(ins);
SetLength(times,ins);
for c:=0 to (MDIChildCount-1) do
  if (MDIChildren[c] is THugoForm) then
    times[c]:=THugoForm(MDIChildren[c]).CreateTime;

// Damit ich nicht alles vorkaue, darfst du die Liste selbst sortieren lassen ;)
// Das letzte oder erste Item, je nachdem wie du sortierst übergibst du dann als Ergebnis
if (length(times) > 0) then
  result:=nil
else result:=times[0];
end;

// Aufgerufen wird die Funktion mit:
procedure TForm1.Test;
var letzteform:THugoForm;
begin
letzteform:=FindLastChild;
// irgendwas mit letzteform machen
end;
Viel Spaß,
cu
  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 09:10 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