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/)
-   -   Bug, Feature oder Ich? - Scale (https://www.delphipraxis.net/172578-bug-feature-oder-ich-scale.html)

bernau 11. Jan 2013 17:09

Bug, Feature oder Ich? - Scale
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich erzeuge ein Firemonkey-HQ-Projekt.

Darauf setze ich eine Listbox mit ein paar Items. Align setze ich auf alClient. Erwartungsgemäß nimmt die Listbox den Ganzen freien Platz auf der Form ein.

Wenn ich nun bei Scale für X und Y den Wert 0.5 eintrage, dann ist die Listbox nur noch halb so groß. Kann ich verstehen, wenn ich align=alnone und mit width und high die Größe der Listbox angegeben hätte. Da ich aber align=alClient angegeben habe, hätte ich erwartet, daß die Listbox immer noch das komplette Fenster einnimmt und nur der Inhalt der Listbox einfach kleiner wird.

Bug, Feature oder Verständnisproblem.

stahli 11. Jan 2013 18:07

AW: Bug, Feature oder Ich? - Scale
 
Ich würde auf ein Verständnisproblem tippen (sonst habe ich halt eines ;-)).

Skalierung habe ich noch nicht getestet, aber mal eine Überlegung:

Wenn Du im Mainform eine Scale-Komponente plazierst unjd da rein diverse Controls und dann die Formulargröße änderst, dann werden die Controls incl. Text usw. vergrößert bzw. verkleinert.
Das Formular zeigt alles noch 1:1 an. Es verschieben sich keine Controls, keine Textumbrüche und nichts anderes.

Wenn Du Deine Listbox in halber Größe haben willst, dann finde ich die Reaktion im Grunde korrekt oder wenigstens nachvollziehbar.
Du kannst ja mal mit anderen Ausrichtungen (right, bottom) oder Ankern herum spielen.

Wenn Du die Items verkleinern willst, dann musst Du evtl. die scalieren?

bernau 11. Jan 2013 18:22

AW: Bug, Feature oder Ich? - Scale
 
Soweit habe ich auch überlegt. Aber es macht keinen Sinn, bei align=alClient die Größe mit zu scalieren. Da ja das Contol den Parent ausfüllen soll. Witzig ist ja, wenn man die Größe von der Form ändert, dann ändert sich auch sich auch die Größe der Listbox. Die ist immer halb so groß wie die Form. Macht visuell keinen Sinn.

Ein Workaround wäre die die Größe manuell zu setzen. Und zwar mit Breite geteilt du scale.

stahli 11. Jan 2013 18:31

AW: Bug, Feature oder Ich? - Scale
 
Aber was willst Du erreichen?

Wenn die Listbox das Formular füllen würde, die Items aber halbiert wären, würde Dir das nichts bringen.
Ebenso wenn Du die Listbox doppelt so groß wie den Formularclient definierst und sie dann halb so groß wie definiert zeichnest.

Am besten einfach die Items kleiner definieren erzeugen, damit mehr Inhalt in die ListBox passt.

bernau 11. Jan 2013 19:38

AW: Bug, Feature oder Ich? - Scale
 
Zitat:

Zitat von stahli (Beitrag 1198708)
Aber was willst Du erreichen?

Es gibt verschiedene Software, bei dem man den Inhalt eines Fensters skalieren kann. Beispiel: Mein Browser.

Ein Slider, mit dem ich dann einfach den Inhalt so groß ziehen kann, damit es gut lesen kann.

Fänd ich dann ganz praktisch, wenn man die Größe der Komponente beibehält aber der Inhalt größer oder kleiner dargestellt wird. Typisch für Kompnenten, deren Inhalt Entsprechend der Größe dargestellt wird. (Listbox, Memo, HTML-Seite,Treeview etc)


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