AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi alle activemdichilds schließen funktioniert nicht
Thema durchsuchen
Ansicht
Themen-Optionen

alle activemdichilds schließen funktioniert nicht

Ein Thema von Overclocker · begonnen am 3. Aug 2008 · letzter Beitrag vom 3. Aug 2008
Antwort Antwort
Seite 1 von 2  1 2      
Overclocker

Registriert seit: 10. Jan 2007
215 Beiträge
 
#1

alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 14:19
Hi,
folgende Procedur schließt mir immer ein aktuelles MDI Child Fenster:

Delphi-Quellcode:
while assigned(activemdichild)
do
activemdichild.free;//vorher close

Folgendes Szenario:

Aus der Main-MDI Form öffne ich ein MDI Child um eine Suche auszuführen (von Benutzern).
Beim Doppelklick auf das DBGrid wo alle Benutzer angezeigt werden, öffnet sich darüber ein neues MDI Child mit dem Profil des Benutzers.


Wenn ich jetzt links einen anderen Button anklicke, um ein ganz anderes MDI Child Fenster zu öffnen, führt er die Procedure (siehe oben) aus.
Allerdings schließt er mir immer nur 1 MDI Child Fenster (nämlich das mit dem Profil). Das Suchfenster wird nicht mehr angezeigt, existiert allerdings noch.
Wenn ich im OnClose des Profil diese Procedur mit einfüge, dann wird das Suchfenster auch RICHTIG geschlossen und es kommt zu keinem Fehler mehr beim nächsten Aufruf.

Jetzt die Frage: Wieso schließt er mir immer nur das oberste MDI CHild Fenster, wenn doch in der Procedure eine WHILE Schleife ist, die alle Childs schließen sollte?

Danke für die Hilfe
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 14:24
Durch den wechsel hat sich ja activemdichild geändert.
Markus Kinzler
  Mit Zitat antworten Zitat
rotfc
(Gast)

n/a Beiträge
 
#3

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 14:24
Rechts, links, oben, unten?
  Mit Zitat antworten Zitat
Overclocker

Registriert seit: 10. Jan 2007
215 Beiträge
 
#4

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 14:28
@rotfc: mdi childs sind bei mir auf der rechten seite, links ist die navigation )

@mkinzler: das sich die reihenfolge ändert ist ja klar, da das profil ja dann weg ist müsste ja suchfunktion dann das active mdi child sein, aber wieso wird das nicht mitgeschlossen?
mit der while schleife müsste das doch so gehen hmmm
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 14:29
Wenn es geschlossen ist, wird es nicht aktiv
Markus Kinzler
  Mit Zitat antworten Zitat
Overclocker

Registriert seit: 10. Jan 2007
215 Beiträge
 
#6

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 14:32
profil wird ja richtig geschlossen.
mit

showmessage(main.ActiveMDIChild.Caption); gebe ich mir das aktive mdi child aus und es wird mir Profil ausgegeben und die Suchform wird allerdings nicht ausgegeben, d. h. es wird zwar nicht mehr angezeigt, aber es ist trotzdem noch vorhanden.

es ist nämlich folgendes problem:

wenn ich die suchfunktion nicht mit schließen lasse, dann kommt beim nächsten aufruf der suchfunktion ein fehler, wenn ich einen benutzer ansehen will (Zugriffsverletzung).
Es funktioniert nur, wenn ich beim 1. mal BEIDE Fenster (also Profil und Suche) schließe.


Problem gelöst:

anstatt dem activemdichild.free habe ich nun activemdichild.close eingefügt und jetzt funktioniert es.

bei denn mdichild fenster muss dann im onclose nur noch ein Free rein dann funktioniert es (und im profil befindet sich das freeandnil und gibt somit das objekt frei)

--- Problem gelöst ---
  Mit Zitat antworten Zitat
rotfc
(Gast)

n/a Beiträge
 
#7

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 15:32
OMG!
  Mit Zitat antworten Zitat
Overclocker

Registriert seit: 10. Jan 2007
215 Beiträge
 
#8

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 16:57
@rotfc: spar dir deine kommentare wenn du eh nicht helfen willst und gut ist, schon sehr "OMG" wenn man noch anfänger ist und sich noch nicht so auskennt....

leute gibts die wohl nix besseres zu tun haben wahnsin.....
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 17:08
Vielleicht ist er ein religiöser Mensch
Markus Kinzler
  Mit Zitat antworten Zitat
extrem

Registriert seit: 27. Mai 2008
72 Beiträge
 
#10

Re: alle activemdichilds schließen funktioniert nicht

  Alt 3. Aug 2008, 19:04
Wohl eher ein weiterer sinnbefreiter Beitrag von ihm.
  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 01:31 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