Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Grössenanpassung der Anwendung auf jeweiligen Desktop (https://www.delphipraxis.net/28458-groessenanpassung-der-anwendung-auf-jeweiligen-desktop.html)

elninjo24 25. Aug 2004 06:56


Grössenanpassung der Anwendung auf jeweiligen Desktop
 
Hallo Fans,

stehe vor einem kleinen(?) Problem. :wall:
Meine Anwendung soll sich je nach Desktop-Einstellung des Users anpassen.
Undzwar sollen sich Buttons, ComboBoxes etc. beim vergrößern der Maske immer
so verschieben, daß sie einigermaßen ihre Ursprungsposition behalten.

Ähnlich wie bei Websites, wo sich der Inhalt mit verschiebt, wenn ich per Hand (Maus)
die Maske gößer ziehe.

Gibt es da irgendein nützliches Tool ?

nieurig 25. Aug 2004 07:05

Re: Grössenanpassung der Anwendung auf jeweiligen Desktop
 
Moin !
Wo liegt das Problem?
Wenn Du Panels einsetzt und mit den Einstellmöglichkeiten der Properties "Align" und "Anchors" herum experimetierts bekommst Du eine Benutzeroberfläche hin, die von der Auflösung des Bildschirms weitergehend unabhängig ist.

Schwierig wird es aber, wenn Du vor hast auch die Schriftgröße, oder die Größe von Menüs anzupassen.

Viel Erfolg.
Niels

nieurig 25. Aug 2004 07:21

Re: Grössenanpassung der Anwendung auf jeweiligen Desktop
 
Nachtrag - Da Du ja offenbar auch die Schriftgröße usw. anpassen willst.

Hier könnte man etwa wie folgt vorgehen:

Code:
if self.Width < 300 then
  Objekt.Font.size := 10
else
  Objekt.Font.size := 12;
wobei self eine Referenz auf das Formular-Fenster sein sollte
und Objekt stellvertretend für ein Steuerungselement steht.

Das ganze müßte dann im onResize-Event des Formulars programmiert werden.

Niels


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:42 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz