Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Buttongröße der Scrollbalken verändern (https://www.delphipraxis.net/185475-buttongroesse-der-scrollbalken-veraendern.html)

EWeiss 15. Jun 2015 14:03

AW: Buttongröße der Scrollbalken verändern
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1305138)
Ich stehe auf dem Schlauch. Ich mache das immer so:

Delphi-Quellcode:
var
   nonClientMetrics: TNonClientMetrics;
begin
   nonClientMetrics.cbSize := SizeOf(TNonClientMetrics);
   SystemParametersInfo(SPI_GETNONCLIENTMETRICS, 0, @nonClientMetrics, 0);

   nonClientMetrics.iScrollWidth := 99;
   nonClientMetrics.iScrollHeight := 99;


   SystemParametersInfo(
      SPI_SETNONCLIENTMETRICS,
      SizeOf(nonClientMetrics),
      @nonClientMetrics,
      0   // This parameter can be zero if you do not want to
         // update the user profile or broadcast the
         // WM_SETTINGCHANGE message
   );
end;
Heraus kommt dann so etwas: Anhang 43364

Und ist auch richtig so.. ;)
Frage mich nun warum du vorher geschrieben hast das es nicht geht. :)

Aber Achtung! Das verändert alle Scrollbars Systemweit..
Solange bis du es zurücksetzt.
Schlechte Lösung denk ich mal.

gruss

LokutusvB 15. Jun 2015 14:07

AW: Buttongröße der Scrollbalken verändern
 
So mache ich das ja auch. Aber das allein ändert nicht die Breite bzw. Höhe der Steuerungsbuttons für Hoch und Runter bzw. Rechts und Links. Und diese Buttons möchte ich von der Größe her an die Breite der Balken anpassen.

Dalai 15. Jun 2015 14:18

AW: Buttongröße der Scrollbalken verändern
 
Das Problem an SystemParametersInfo ist doch, dass die Änderungen alle Programme betreffen, und zwar selbst dann, wenn man sie nicht broadcasten lässt, denn spätestens, wenn ein anderes Programm einen Broadcast loslässt, werden sie für alle übernommen.

Ein solches Programm würde keine 3 Minuten auf meinem System leben. Daher würde ich gar nicht weiter versuchen, mit dieser Funktion ein Problem zu lösen, das nur für die eigene Anwendung gelten soll.

MfG Dalai

Der schöne Günther 15. Jun 2015 14:21

AW: Buttongröße der Scrollbalken verändern
 
Ja. Deswegen sagte ich doch, dass es nicht geht, das nur für eine Anwendung und nicht systemweit zu machen.

LokutusvB 15. Jun 2015 14:27

AW: Buttongröße der Scrollbalken verändern
 
Ich habe doch schon geschrieben, daß das in diesem Fall total egal ist. Ich hätte nur gern mal die Parameter gewußt. Auf was das Änderungen hat, ist mir klar.

Luckie 15. Jun 2015 19:44

AW: Buttongröße der Scrollbalken verändern
 
Eine Lösung wurde dir doch genannt: Skins. Du musst ja nicht das Hello Kitty Glitzer Skin nehmen.

LokutusvB 16. Jun 2015 07:12

AW: Buttongröße der Scrollbalken verändern
 
Dieses neue (eingebaute) Skinning/Theming ist doch aber für die Firemonkey-Anwendungsentwicklung. Bei VCL wäre mir das neu und ich wüßte auch gar nicht, wo ich in Delphi danach suchen sollte, das Theming der VCL-Komponenten zu ändern.

Davon abgesehen möchte ich für dieses Problem nicht an verschiedenen Stellen "schrauben". Es wird doch ganz bestimmt ein passendes Attribut für die SystemParametersInfo geben.

himitsu 16. Jun 2015 08:50

AW: Buttongröße der Scrollbalken verändern
 
Nein, gibt es nicht. Du stlellst mit einer globalen Option immer alles global um.

Und nein, auch die VCL hat Styles, bzw. gab's das dort auch schon vor'm FMX, über Fremdkomponenten.

LokutusvB 16. Jun 2015 09:09

AW: Buttongröße der Scrollbalken verändern
 
Zitat:

Zitat von himitsu (Beitrag 1305227)
Nein, gibt es nicht. Du stlellst mit einer globalen Option immer alles global um.

Das verstehe ich noch nicht so ganz. Wenn ich global die Breite der Scrollbalken ändern kann, kann ich dann nicht auch global die Größe der Bottons der Scrollbalken ändern? Oder ist es das, was du mir sagen möchtest, das genau das nicht geht?

Dalai 16. Jun 2015 12:27

AW: Buttongröße der Scrollbalken verändern
 
Ich verstehe das Problem nicht. Die von Günther gezeigte Lösung ändert auch die Buttongröße, wie man unschwer auf dem Screenshot erkennen kann. Diese Variante arbeitet global, was dir laut eigener Aussage egal ist. Trotzdem benutzt du sie nicht. Der Hinweis mit den Skins/Styles geht in eine andere Richtung, um das Dilemma der globalen Lösung für ein lokales Problem zu vermeiden/umgehen.

MfG Dalai


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:16 Uhr.
Seite 2 von 3     12 3      

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