Autor Beitrag
Tendl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 117



BeitragVerfasst: Mo 10.03.03 10:26 
Ich möchte verschiedene Desktopfarben ändern. Im Prinzip funktioniert das auch über die Registry. Allerdings wird die Änderung erst nach dem nächsten Neustart wirksam.
Wie kann ich die Farben sofort zur Anzeige bringen?

Danke
Thomas
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: Mo 10.03.03 10:45 
Versuch mal mit der API Funktion GetSysColor(). Hier ein Beispiel für Desktopfarbe:

ausblenden Quelltext
1:
Color := GetSysColor(COLOR_DESKTOP);					


Andere Farben haben andere Konstanten. Guck dazu in der API Hilfe.

_________________
Popov
OregonGhost
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 215



BeitragVerfasst: Mo 10.03.03 12:48 
Ist mir neu, das man mit GetSysColor() die Farben verändern kann ;c)

SetSysColors() heißt hier das Zauberwort. Gilt allerdings nur für die laufende Sitzung. In die Registry schreiben musst du also trotzdem, wenn die Änderungen nach Neustart erhalten bleiben sollen. Alternativ kannst du auch einfach (wie SetSysColors()) WM_SYSCOLORCHANGE an alle Fenster senden und diese auffordern, sich neu zu zeichnen.

_________________
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
Tendl Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 117



BeitragVerfasst: Mo 10.03.03 13:46 
Vielen Dank, genau das war's.

Thomas
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: Mo 10.03.03 13:56 
OregonGhost hat folgendes geschrieben:
Ist mir neu, das man mit GetSysColor() die Farben verändern kann ;c)


Irgendwie kann man davon ausgehen, daß eine Get-Funktion auch ein Set-Gegenstück hat. Sommit kann man fast immer von einer Get-Empfehlung auf eine Set-Funktion schließen.

Ich sehe da also kein Problem drinn.

_________________
Popov
Raphael O.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1596


VS 2013
BeitragVerfasst: Mo 10.03.03 23:12 
das weiß aber nicht jeder....
und du kannst dann ja auch gleich setXXXX schreiben...
torstenheinze
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 461



BeitragVerfasst: Mo 10.03.03 23:16 
nicht zu jeder get funktion gibt es auch immer einen set funktion


frag jez net nach nen beispiel :wink:
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: Di 11.03.03 00:26 
Ich hab ja auch geschreiben fast immer.

Ich gebe zu, daß ich mich verschreiben habe und eigentlich SetBlaBla schreiben wollte. Aber ich war schon auf dem halben weg den Rechner runterzufahren und hab nicht 100% drauf geachtet was ich schreibe.

Aber dennoch bin ich der Meinung, daß man bei einem Get oder Set man immer selbst prüfen kann ob es ein Gegenstück gibt.

_________________
Popov