![]() |
SetSysColors gibt Fehler wieder
Hallo, mittels SetSysColors kann ich die Windows-Farben verändern.
Die angegebenen Farben werden auch verändert, ich kriege aber immer einen Fehlecode zurück.
Code:
verändert die angegebenen Farben, ich krieg aber immer den Fehler 'Der Parameter stimmt nicht'.
[b]var[/b]
A: [b]Array[/b][1..3] [b]of[/b] integer; B: [b]Array[/b][1..3] [b]of[/b] TColor; [b]begin[/b] A[1] := COLOR_SCROLLBAR; A[2] := COLOR_MENU; A[3] := COlOR_BACKGROUND; B[1] := clBLue; B[2] := clYellow; B[3] := clGreen; [b]if[/b] SetSysColors(3,A,B) [b]then[/b] Caption := SysErrorMessage(GetLastError); [b]end[/b]; Weiß einer warum? |
Also bei mir tuts, Win XP!
Was für ein OS hast du den??? Und was wird bei Scrollbar verändert ich merk nix??? |
Hallo!
Ich hab WinMe drauf. Also mit der Scrollbarfarbe ists etwas merkwürdig, ich sehe zwar keine blaue Farbe auf irgendeiner Scrollbar, die Farbvariable wird aber anscheinend richtig verändert, denn 1. Ergibt einlesen mit GetSysColor(COLOR_SCROLLBAR) die eingestellte Farbe, und 2. Zeigt der Anzeige-Dialog von Windows die Scrollbar blau an. - fragt sich blos warum sich dir Programme nicht dran halten :?: :shock: Gruß Sebastian |
:roll:
hmm... 1. Ich schaffe es nicht SetSysColors auzurufen ohne dass sie selbst sich als fehlgeschlagen ansieht. Es funktioniert aber! 2. COLOR_SCROLLBAR ist rätselhaft. Im PSDK steht kein Hinweis das COLOR_SCROLLBAR eine Sonderrolle spielt. Verändere ich sie, wird nirgeds die neue Farbe angezeigt, außer im Vorschau-Fenster von dem Windows-Anzeige-Dialog, in diesem selbst gibt es keine Möglichkeit die Scrollbarfarbe zu ändern, nur die größe... :?: :roll: Gruß Sebastian |
Also ich hab die Procedure an einem Button und bei ersten mal geht es meist bzw. es tritt ein Fehler auf aber alles wird verändert, und bei zweiten mal geht alles wie am Schnürchen!
Vielleicht gibt Lasterror einen Fehler davor aus der garnicht durch das Verändern der Farben verursacht wurde! |
Wenn ich in eine Normale Anwendung ins OnCreat
Code:
einbinde zeigt er auch einen Fehler an!!!
caption := SysErrormessage(GetLastError);
Hier: Das Handle ist ungültig Und wenn ichs bei ButtonOnClick dann kommt: Das Fenster hat keine Bildlaufleiste aber nach dem zweiten Klick, wenn ich das Fenster bewegt habe: Der Vorgang wurde erfolgreich beendet |
Hi Grotesquery,
ich habs noch nicht ausprobiert, aber ich würe sagen, dass du ein array[0..2] und nicht [1..3] nehmen musst, weil unter C++ die Arrays so erstellt werden. MfG, d3g |
Hallo!
Das sdk sagt: Zitat:
Zitat:
*vor den kopf hau* Es muss natürlich ein not nach das if, ein nonzero-Wert ist natürlich immer true. :oops: Oder sehe ich da jetzt was falsch? Ich verstehe jetzt nicht wieso es ohne das not bei FuckRacism ohne Fehlermeldung geklappt hat... Gruß Sebastian |
Ist mir auch aufgefallen aber ich dachte das SetSysColors gar keinen Fehler bzw. nicht nicht True ist
|
Nicht nicht true? lol
Also das scheint jetzt (bei mir jedenfalls) zu funktionieren. Bekommst du denn auch mal false zurück? Ich hab jetzt mal versucht die Funktion fehlschlagen zu lassen, keine Chance, ich krieg immer 1 (true) zurück. Und da wäre ja noch das merkwürdige verhalten von der Scrollbarfarbe... Gruß Sebastian |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:54 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 by Thomas Breitkreuz