Anchors Problem (Komponenten ausrichten)

Für Fragen rund um die Ide und zum Debugger
Antworten
siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Anchors Problem (Komponenten ausrichten)

Beitrag von siro »

Hallo zusammen,
ich habe ein Problem mit dem Ausrichten von Komponenten auf einem Formular.

Ich habe für mein Fenster eine Horizontale Skalierung (unten)
und eine vertikale Skalierung (rechts) programmiert.
mittig soll dann ist ein Kurvenfenster sein.
Bild sagt mehr als viel gequassel... :D

Anchors_01.jpg


Ich kann meine untere horizontzale Skalierung nicht an der rechten Seite der horizontalen Skalierung ausrichten.
Das kann man auch mal mit 2 mit Panles probieren. Ich bekomme das nicht hin.
Ist das ein Problem von Lazarus oder machhe ich etwas falsch ?

Ich hab mir jetzt mit Form.OnResize geholfen und die Komponeten selbst ausgerechnet wo sie liegen müssen.
Geht natürlich auch. Aber ich dachte ich kann es direkt im Forumlar Designer machen.

einen schönen Sonntag wünsche ich euch
Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von af0815 »

A) Für Grafiken verwende ich TAChart - das gibt es auch eine menge Beispiele dazu -> wenn ich das Rad nicht neu erfinden will.

B) Ist die Aufgabe, das 'zu Fuß' zu lösen: Dann würde ich für die rechte untere Ecke ein Panel nehmen und das entsprechend mit den ANchors definieren. Somit sind dann 4 Komponenten in dem Bereich mit den Anchors und die untere Beschriftung lässt sich sauber lösen.

Andreas
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von wp_xyz »

Es geht auch mit dem Anchor-Editor, der zugegebenermaßen manchmal etwas störrisch ist - siehe beigefügtes Projekt. Das gelbe Panel1 entspricht deiner vertikalen, das Panel2 der horizontalen Skala. Das graue Panel ist dein schwarzer Block.

Folgende Verankerungen sind nötig (wahrscheinlich in dieser Reihenfolge)
  • Rechte Seite des vertikalen Panels 1 mit der rechten Seite des Formulars
  • Obere Seite des vertikalen Panels 1 mit der oberen Seite des Formulas
  • Linke Seite des horizontalen Panels 2 mit der linken Seite des Formulars
  • Untere Seite des horizontalen Panels 2 mit der unteren Seite des Formulars
  • Linke Seite des grauen Panels 3 mit der linken Seite des Formulars
  • Obere Seite des grauen Panels 3 mit der linken Seite des Formulars
  • Wenn du jetzt kompilierst und die Größe des Formulars veränderst, müsste Panel1 rechts oben, Panel 2 links unten und Panel 3 links oben hängen bleiben, und alle Panels dürften ihre Größe nicht verändern. Nun werden die Panels miteinander verbunden
  • Rechte Seite des horizontalen Panels 2 mit der linken Seite des vertikalen Panels 1
  • Untere Seite des vertikalen Panels 1 mit der oberen Seite des horizontalen Panels 2
  • Rechte Seite von Panel3 mit der linken Seite von Panel 1
  • Untere Seite von Panel3 mit der oberen Seite von Panel 2
Dateianhänge
AnchorEditor_3Panels.zip
(1.84 KiB) 85-mal heruntergeladen

siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von siro »

Hallo Andreas,
das TAChart kannte ich noch garnicht und werde mir das mal ansehen,
Ich schreib ja gern eigene Komponenten, die ich entsprechend meinen Vorstellungen anpassen kann.
Guck mir aber immer gerne an wie das andere auch machen, weil auch die haben gute Ideen.
Ich hatte auch probiert zusätzlich ein Panel in die rechte untere Ecke zu setzen.
Irgendwie wollte das nicht klappen.

@wp_xyz:
Dein Anhang habe ich grad ausprobiert und der funktioniert hervorragend, genauso wie ich es mir vorgestellt habe.
Also habe ich es grad versucht nach deiner Anleitung mit Panels selbst nachzuvollziehen.
Klappte aber irgendwie wieder nicht. Ich hatte es aber auch schon mal irgendwie hinbekommen.
Das scheint ein wenig zufällig zu sein, und entscheidend vermutlich auch wie man in welchen
Reihenfolgen die Teile aufs Formular setzt. Ich forsche noch.

Aber habt erstmal vielen Dank für Eure Informationen.
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von mse »

Geht das nicht auch mit einfachen Ankern?
Die Fläche hat [an_left,an_top,an_right,an_bottom], die horizontale Skala [an_left,an_right,an_bottom] und die vertikale Skala [an_top,an_right,an_bottom].
http://mseide-msegui.sourceforge.net/pics/anchors.mpeg
Aber wie af0815 schreibt, TAChart ist sicher die bessere Lösung.

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von wp_xyz »

Die einfachen Anker wissen nichts von den anderen Panels. Wenn man in dieser Lösung z.B. die Breite der senkrechten Skala ändert, muss man auch die Breite der waagrechten Skala und die des zentralen Panels anpassen. Bei der beschriebenen Verankerung mit Hilfe des Anker-Editors geht das automatisch.

siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von siro »

Hallo, da bin ich wieder mit Dank und guten Nachrichten: Ich habe es jetzt hinbekommen,
man muss ein bisschen probieren mit den Anchors, so ganz verstanden habe ich das aber immer noch nicht....

HorVer_Okay.jpg


@mse: Mit dem Video ist supi. genau so soll es auch bei mir funktionieren und das tut es jetzt auch.
und das TAChart hab ich mir mal "etwas" angesehen. Da hat sich jemand richtig Mühe gegeben.

Im Prinzip erfinde ich grade das Rad neu... :oops: aber das übt und ich werde deshalb auch weiter dran arbeiten...

Ich muss mal gucken, ob ich auch so ein Video hinbekomme. Mal googlen wie so etwas geht.

Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von wp_xyz »

siro hat geschrieben:TAChart hab ich mir mal "etwas" angesehen. [...]Im Prinzip erfinde ich grade das Rad neu... :oops: aber das übt und ich werde deshalb auch weiter dran arbeiten...

Nein, das Rad erfindest du nicht neu, sondern ein Auto. Nur zum Üben wäre mir dafür die Zeit zu schade, denn das selbstgebaute Auto wird eh nicht fertig.

Im Ernst: den Sinus kriegst du mit TAChart inkl. Achsenbeschriftung und Legende mit ein paar Zeilen Code und ein paar Mausklicks hin: http://wiki.lazarus.freepascal.org/TACh ... ng_started

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von MacWomble »

Ich finde die Einstellung gut, das selbst zu programmieren. So versteht man die Hintergründe.
Und wenn das Auto nie fertig wird, was solls. In Berlin machen die das mit nem ganzen Flughafen :twisted:
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Anchors Problem (Komponenten ausrichten)

Beitrag von siro »

Das Forum geht ja wieder. SUPER

Mit den Verankerungen klappt jetzt super.

Und mit dem "Rad neu erfinden" bin ich auch schon weiter gekommen. (Trotz Berlin Flughafen :) )
Habe mir automatische Scalekomponenten geschrieben und die Funktionalität so angepasst, dass man die Skalierungen direkt als Scrollbalken benutzen kann.
Die sind jeweils in 3 Teile aufgeteilt. Im mittleren Bereich schiebt man den gesamten Ausschnitt in den Randbereichen kann man entsprechend den dargestellten Bereich an der
entsprechenden Seite vergrößern/verkleinern. Das Ausrichten mit dem Anchoreditor habe ich jetzt auch verstanden und meine Komponenten arbeiten wunderbar damit.

Mal gucken, ob das mit dem Video hier klappt.
Leider nicht, die Dateierweiterung mp4 ist nicht erlaubt.... :cry:
Die Konvertierungsprogramme die ich runtergeladen habe laufen alle nicht
aber der externe Link zu DropBox sollte laufen:

https://www.dropbox.com/s/418rlycvawnej ... 8.mp4?dl=0
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Antworten