Delphi-PRAXiS
Seite 2 von 2     12   

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/)
-   -   Delphi Nieder mit dem Stringgrid-Fokus (https://www.delphipraxis.net/86437-nieder-mit-dem-stringgrid-fokus.html)

WIng2005 18. Sep 2007 09:41

Re: Nieder mit dem Stringgrid-Fokus
 
Hallo,

kämpfe grad mit ähnlichen Problemen. Bei mir geht das sogar soweit, dass ich aufgrund einer sehr hellen
Hintergrundfarbe (des Grid) die weiße Schriftfarbe der Zelle nicht mehr erkennen kann. Habe festgestellt,
dass dieses Problem (bei mir zumindest) nur dann auftritt, wenn ich deas Windows-Farbscheme "Blau" gewählt habe.
Unter "Silber" ist noch alles lesbar. Die hier gebrachten Vorschläge beziehen sich doch eigentlich alle auf
den möglichst hohen Kontrast allgemein. Leider ändert sich die Schriftfarbe, wenn die Zelle focusiert ist
völlig unabhängig von der angegebenen Schriftfarbe. Wenn ich via OnDraw die Schriftfarbe explizit jedesmal
neu auf -schwarz- setze, dürfte auch im fokusierten Zustand keine -weiße- Farbe angezeigt werden....
oder liege ich da falsch? Die Frage ist doch also, wie die Farben verändert werden können, wenn die Zelle den Fokus hat.

MFG
Steffen

shmia 18. Sep 2007 10:05

Re: Nieder mit dem Stringgrid-Fokus
 
Man muss den Font-Color des Canvas ändern.
Das Font-Objekt des Stringgrids und das Font-Objekt des Canvas sind zwei verschiedene Dinge.
Delphi-Quellcode:
with StringGrid1.Canvas do
   Font.Color := BlackWhiteContrastColor(Brush.Color); // <====

SirThornberry 18. Sep 2007 10:06

Re: Nieder mit dem Stringgrid-Fokus
 
die herangehensweise ist falsche. Die Farbe von Schrift, Hintergrund und Selektierung richtet sich nach den Einstellungen des Nutzers. Wenn man so dreist ist die Einstellungen des Nutzers zu ignorieren muss man alle Farben ändern und sollte sich nicht darauf verlassen das der Nutzer bestimmte Einstellungen hat. Der Nutzer kann schließlich die Farben individuell einstellen wenn ihm danach ist.

WIng2005 18. Sep 2007 11:01

Re: Nieder mit dem Stringgrid-Fokus
 
:wall:
@shmia: das wars..., mein Fehler.

@SirThornberry: Sicher, da hast du recht. Ich benutze hier jedoch auch Farben, die ich im Unternehmen einheitlich haben will, also unabhängig von irgendwelchen Nutzereinstellungen... diese habe ich dann auch ALLE (ob das nun dreist ist, oder nicht) geändert. Hatte eben nur die Schriftfarbe falsch angesprochen...

MFG
Steffen

raiguen 18. Sep 2007 15:10

Re: Nieder mit dem Stringgrid-Fokus
 
Mal unabhängig von der ganzen Farbspielerei- wenn ich auf die Kernfrage=fokusierte Zelle(1|1) zurückkomme: wie wär's mit einem simplen
Zitat:

StringGrid1.Selection := TGridRect(Rect(-1,-1,-1,-1));
:?:

WIng2005 19. Sep 2007 07:18

Re: Nieder mit dem Stringgrid-Fokus
 
Sofern das Grid nur zur Darstellung von Informationen dient, kann das Sinn machen.
Mein Grid erlaubt ein "Tieferklicken", d.h. ich kann zu einzelnen Informationen per Click
Unterinformationen anzeigen. Somit ist immer eine Zeile (Rowselect auf True) fokusiert.

MFG
Steffen


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:36 Uhr.
Seite 2 von 2     12   

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