[gelöst] TC Dark Modus: Umrandung des aktivierten Button in Dialogboxen

German support forum

Moderators: white, Hacker, Stefan2

Post Reply
User avatar
vianova
Member
Member
Posts: 103
Joined: 2011-12-06, 18:35 UTC
Location: Hamburg

[gelöst] TC Dark Modus: Umrandung des aktivierten Button in Dialogboxen

Post by *vianova »

Moin,
ist es normal das im Dark Modus bei allen Dialogboxen
der aktivierte Button so "umrandet" ist?
https://www.directupload.net/file/d/5661/idr5mwgq_png.htm
Gruß aus HH
#425 Personal licence me and TBO are the same user
16 GB Win 10 Pro 21H2 64 Bit with TC 10.51 (32/64 Bit)
User avatar
HolgerK
Power Member
Power Member
Posts: 5406
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Re: TC Dark Modus

Post by *HolgerK »

Die Umrandung ist auch im Light-Modus vorhanden (nennt sich keyboard focus rectangle) und zeigt an welcher Control momentan den Tastaturfokus besitzt: http://holgerk.drivehq.com/TC9.50Beta/TC9.50B8(KeyboardFocusRectangle_Light_vs_Dark).png

Normalerweise ist der allerdings nur punktiert (und wirkt daher eher wie eine graue Line).

Das TC hier eine gestrichelte Linie anstelle der punktierten Linie zeigt, könnte daran liegen das man bei einem punktierte Rahmen auf einem dunklem Hintergrund um einen freistehenden Kontrol (wie z.B. bei den Chckboxen) einen anderen Kontrasteindruck erhält als wenn diese punktierte Linie direkt neben dem durchgezogen Rahmen des Buttons gezeichnet wird.
Kann aber auch einfach nur ein Versehen sein, oder die gestrichelte Linie wird bereits von den MS-Controls so gezeichnet. ;-)

Gruss
Holger
Make our planet great again
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48075
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: TC Dark Modus

Post by *ghisler(Author) »

Nein, das ist ein Bug von Windows: Ich versuche eine gepunktete Linie zu zeichnen (CreatePen mit PS_DOT), Windows zeichnet aber immer eine gestrichelte Linie. :(
Author of Total Commander
https://www.ghisler.com
User avatar
HolgerK
Power Member
Power Member
Posts: 5406
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Re: TC Dark Modus

Post by *HolgerK »

Da war doch ein Unterschied zwischen PS_COSMETIC und PS_GEOMETRIC (lang, lang ist es her... ?:-|):

Code: Select all

LOGBRUSH lb; 
lb.lbStyle = BS_SOLID; 
lb.lbColor = RGB(0,0,0); 
lb.lbHatch = 0; 
hpenDot = ExtCreatePen(PS_GEOMETRIC | PS_DOT, 1 , &lb, 0, NULL); 
bzw. bessere Lösung: https://www.codeproject.com/Articles/7510/Creating-a-True-Dotted-Pen

Code: Select all

LOGBRUSH lb; 
lb.lbStyle = BS_SOLID; 
lb.lbColor = RGB(0,0,0); 
lb.lbHatch = 0; 
hpenDot = ExtCreatePen(PS_COSMETIC | PS_ALTERNATE , 1, &lb, 0, NULL); 
Siehe auch: https://forum.lazarus.freepascal.org/index.php?topic=29133.0

Gruss
Holger
Make our planet great again
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48075
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: TC Dark Modus

Post by *ghisler(Author) »

Ich benutze im Moment die Delphi/Lazarus-Funktionen mit Pen.color etc, da kann ich leider kein ExtCreatePen benutzen. :(
Author of Total Commander
https://www.ghisler.com
User avatar
HolgerK
Power Member
Power Member
Posts: 5406
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Re: TC Dark Modus

Post by *HolgerK »

Code: Select all

 pbox.Canvas.Pen.Style := psDot;   pbox.Canvas.Pen.Cosmetic := false;
Gruss
Holger
Make our planet great again
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48075
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: TC Dark Modus

Post by *ghisler(Author) »

Danke, aber ich habe es bereits auf die entsprechenden Windows-API-Funktionen umgestellt - sieht wirklich besser aus...
Author of Total Commander
https://www.ghisler.com
User avatar
vianova
Member
Member
Posts: 103
Joined: 2011-12-06, 18:35 UTC
Location: Hamburg

Re: TC Dark Modus

Post by *vianova »

Danke Holger und Christian,
sieht deutlichst besser aus :D
#425 Personal licence me and TBO are the same user
16 GB Win 10 Pro 21H2 64 Bit with TC 10.51 (32/64 Bit)
Post Reply