AGB  ·  Datenschutz  ·  Impressum  







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

Frame Align := alClient funktioniert nicht

Ein Thema von Jens Hartmann · begonnen am 31. Jan 2011 · letzter Beitrag vom 4. Feb 2011
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von stahli
stahli

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

AW: Frame Align := alClient funktioniert nicht

  Alt 4. Feb 2011, 14:37
Tritt der Fehler auch auf, wenn Du alles nach inherited ausklammerst?
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#12

AW: Frame Align := alClient funktioniert nicht

  Alt 4. Feb 2011, 15:47
Leider auch der selbe Fehler.

Wie gesagt, bis zum schließen Funtz das ganze. Dann alle GridPanel löschen, Neu implementieren und es geht wieder.

Projekt schließen, Projekt öffnen, Fehler da. Delphi meldet das dann schon beim Projekt öffnen. Siehe Anhang.

Gruß Jens
Miniaturansicht angehängter Grafiken
start.png  
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

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

AW: Frame Align := alClient funktioniert nicht

  Alt 4. Feb 2011, 16:05
Dann liegt das Problem ja nicht in Deinem Quelltextausschnitt.
Machst Du noch mehr im Frame.Create?

Es sieht ja so aus, als ob eine Zelle gelöscht wird, die ein Control enthält.

Die Fehlermeldung kenne ich von Komponenten, bei denen bisher existierende Eigenschaften entfernt werden. Die IDE kann dann die Eingenschaftswerte, die in der DFM stehen, keiner Eigenschaft zuordnen.

Kommst Du besser zurecht, wenn Du den Frame erst zu Laufzeit dynamisch erzeugst und in das Formular setzt?
Alternativ nutze ich inzwischen auch lieber dynamisch eingebundene Formulare - die sind mir sympathischer als Frames.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von Sybok Factor
Sybok Factor

Registriert seit: 15. Jan 2003
Ort: Billerbeck
39 Beiträge
 
Delphi 2010 Professional
 
#14

AW: Frame Align := alClient funktioniert nicht

  Alt 4. Feb 2011, 17:29
aus eigener leidvoller Erfahrung: Wenn du an der GUI des Frames etwas änderst, speziell etwas löschst, dann lösche den Frame dort wo du ihn zugeordnet hast und lege ihn dann NEU auf das Elterncontrol.

Align := alClient macht dann Probleme wenn der Frame auf einem Control liegt, dass ebenfalls alClient hat oder wenn darauf Elemente liegen, die auch automatisch in der Größe geändert werden soll.

Noch zu deinem Problem mit dem fehlenden Element: Ich bin mir nicht ganz sicher, aber ich meine mich zu erinnern, dass ich ähnliche Fehler hatte, wenn der Frame "zu früh" erzeugt wurde. Eventuell hilft es den Erstellungszeitpunkt nach hinten zu setzen.
Jetzte michse verstehen dein Problem!
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#15

AW: Frame Align := alClient funktioniert nicht

  Alt 4. Feb 2011, 19:30
Zitat von stahli:
Dann liegt das Problem ja nicht in Deinem Quelltextausschnitt.
Machst Du noch mehr im Frame.Create?
Nein, das war das gesamte Frame.Create!

Zitat von stahli:
Es sieht ja so aus, als ob eine Zelle gelöscht wird, die ein Control enthält.
Das ist aber definitiv nicht der Fall. Die Komponenten die auf den Zellen liegen, werden später erst erzeugt.

Zitat von stahli:
Kommst Du besser zurecht, wenn Du den Frame erst zu Laufzeit dynamisch erzeugst und in das Formular setzt?
Alternativ nutze ich inzwischen auch lieber dynamisch eingebundene Formulare - die sind mir sympathischer als Frames.
Ja, so funktioniert es fehlerfrei,
Delphi-Quellcode:
  
 gridFrame1 := TFrame2.Create(Self);
  with gridFrame1 do
  begin
    Name := 'gridFrame1';
    Parent := PageControl1.Pages[0];
    Align := alClient;
  end;
Zitat von Sybok Factor:
Align := alClient macht dann Probleme wenn der Frame auf einem Control liegt, dass ebenfalls alClient hat oder wenn darauf Elemente liegen, die auch automatisch in der Größe geändert werden soll.
Alles diese ist genau so, allerdings erzeuge ich das Frame dynamisch funktioniert es!

Zitat von Sybok Factor:
Noch zu deinem Problem mit dem fehlenden Element: Ich bin mir nicht ganz sicher, aber ich meine mich zu erinnern, dass ich ähnliche Fehler hatte, wenn der Frame "zu früh" erzeugt wurde. Eventuell hilft es den Erstellungszeitpunkt nach hinten zu setzen.
Das kann schon sein, da der Frame aber auf dem PageControl schon zur Entwicklungszeit gelegen hat, habe ich ja auf den Code, wann das Frame erzeugt wird keinen Einfluss.

Naja, dynamisch funktioniert es. Aber ich fände schon Intresant wo der Fehler liegt.

Gruß Jens
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

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

AW: Frame Align := alClient funktioniert nicht

  Alt 4. Feb 2011, 19:48
Ich habe nur so eine ungefähre Vermutung:

Die Controls auf einem Frame werden als Eigenschaften des Frames behandelt und beim Schließen des Projektes im Formular gespeichert.
Beim Öffnen des Formulars sollen die Controls wieder entsprechend eingerichtet werden, sind aber zu dem Zeitpunkt vielleicht noch nicht vorhanden.

Ist aber nur eine Vermutung.

Ich verzichte lieber auf Frames und nutze dynamische Formulare. Das finde ich im Handling übersichtlicher.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 02:56 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