Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Frames and "Revert to inherited" (https://www.delphipraxis.net/213874-frames-revert-inherited.html)

softtouch 12. Okt 2023 11:42

Frames and "Revert to inherited"
 
Manchmal, wenn ich mit Frames arbeite, verschiebe ich Steuerelemente auf dem Formular, auf dem der Frame eingebettet ist, anstatt auf dem Frame selbst.
Ich weiß, dass es eine Funktion namens "Reset to inherited" im Popup-Menü des Steuerelements gibt, die das Steuerelement so neu positioniert wie im Frame, aber dabei werden auch alle zugewiesenen imagelists oder events entfernt.
Gibt es eine Möglichkeit, die Steuerelemente einfach nur neu zu positionieren, damit sie wieder wie im Frame positioniert sind, ohne dabei alle events und anderen properties zu verlieren?

Uwe Raabe 12. Okt 2023 13:04

AW: Frames and "Revert to inherited"
 
Das Revert to inherited gibt es auch für die einzelnen Properties - in diesem Fall also z.B. Left/Top des jeweiligen Controls. Kann aber dann auch etwas aufwändiger werden.

himitsu 12. Okt 2023 13:25

AW: Frames and "Revert to inherited"
 
Im Notfall.

Alt+F12, wenn du im Designer bist.
Und dann die Property löschen, welche du nicht brauchst.


Natürlich nutzt du eine Versionierung, falls du dabei ausversehn was Falsches löschst oder sonstwie kaputt machst.

Der schöne Günther 12. Okt 2023 18:01

AW: Frames and "Revert to inherited"
 
Ich hätte gedacht dass einem das Versionierungssystem deines Vertrauens da hilft. Du siest ja direkt, dass Änderungen an der DFM-Datei vorgenommen wurden und machst das entweder direkt rückgängig, oder halt nur die Teile die aus Versehen reingerutscht sind.

jaenicke 12. Okt 2023 18:58

AW: Frames and "Revert to inherited"
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1528023)
Du siest ja direkt, dass Änderungen an der DFM-Datei vorgenommen wurden und machst das entweder direkt rückgängig, oder halt nur die Teile die aus Versehen reingerutscht sind.

Richtig, wichtig ist immer, dass man jede einzelne Änderung vor dem Einchecken prüft, egal ob z.B. in einer .dproj, .pas oder .dfm Datei, und wirklich nur die eincheckt, die beabsichtigt waren. Leider arbeitet nicht jeder so, aber das sollte eigentlich selbstverständlich sein.

Wenn man das aber tut, sollte es auch kein Problem sein, die entsprechenden unbeabsichtigten Änderungen, wie schon geschrieben wurde, gezielt rückgängig zu machen.

himitsu 12. Okt 2023 20:53

AW: Frames and "Revert to inherited"
 
Selbst wenn man erstmal blind alles eincheckt ... man kann nachträglich immernoch nachsehn, was sich geändert hatte, und davon dann auch Teile wieder reverten.

softtouch 12. Okt 2023 21:29

AW: Frames and "Revert to inherited"
 
Um die Sache kurz zu machen, wonach ich gefragt habe, geht also nicht so einfach wie gedacht. Damit hat sich die Sache dann erledigt.

himitsu 12. Okt 2023 22:00

AW: Frames and "Revert to inherited"
 
Wieso?


Löschst du die geänderten Property, werden wie beim Laden nicht überschrieben und sind wie vom Vorfahre.

jaenicke 13. Okt 2023 07:49

AW: Frames and "Revert to inherited"
 
Zitat:

Zitat von softtouch (Beitrag 1528030)
Um die Sache kurz zu machen, wonach ich gefragt habe, geht also nicht so einfach wie gedacht. Damit hat sich die Sache dann erledigt.

Ich finde es schon sehr einfach, wenn ich im Diff direkt sehe, welche Eigenschaften geändert wurden und diese ggf. entfernen kann, zumal das dann auch gleich alle ggf. unbeabsichtigten Änderungen zeigt und nicht nur die Positionen.

Es hilft finde ich auch nicht viel weiter, wenn ich die Positionen an einer Stelle zurücksetzen kann, andere unbeabsichtigte Änderungen dann aber ohnehin mit der Versionsverwaltung prüfen muss. Dann hat man gleich zwei Stellen, die man nutzen muss.

Wenn du nicht möchtest, dass sich die Positionen unbeabsichtigt ändern, kannst du im Menü Bearbeiten den Punkt "Elemente fixieren" aktivieren. Dann kannst du die Komponenten nicht mehr mit der Maus verschieben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:29 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