Kurz: Hintergrundfarbe von Controls setzen mit SetClassLong



  • Hi Forum!

    Frage steht im Titel,

    SetClassLong mit GCL_HBRBACKGROUND wäre ja perfekt geeignet um die
    Hintergrundfarbe für Controls zu setzen. Natürlich funktioniert das
    nur für "richtige" Fenster. Warum?
    (Immerhin kann ich die internen Control-Klassen mit SetWindowLong
    modifizieren?!)

    c ya, cPanther

    anmerkung:
    Ich benötige keine Vorschläge wie man's hinbekommt, die
    Hintergrundfarbe von Controls zu setzen...



  • ajcPanther schrieb:

    SetClassLong mit GCL_HBRBACKGROUND wäre ja perfekt geeignet um die
    Hintergrundfarbe für Controls zu setzen.

    Nein ist es nicht, da Du damit *alles* beeinflusst.



  • Hugh? Aber doch nur für die entspr. Fensterklasse, oder nich?

    Sorry, verstehe "für alles" nicht...

    Edit:
    Oder wird mit SetWindowLong abgeleitet und mit SetClassLong schlicht geändert?
    (Hm, muss noch mal genauer lesen...)



  • Naja eben für alle Fenster dieser Klasse...ist das gewollt 😮 ?!

    PS: Der normale Weg geht über die Message WM_CTLxxx. Siehe MSDN.



  • Ne, is natürlich nicht gewollt. Aber mir is jetzt erstmal klar,
    wo der Unterschied der beiden Funktionen liegt. Dankeschön! 🙂

    (Jetzt muss ichs nur noch hinbekommen, mehrere WndProcs sauber
    hintereinander zu schalten, aber... anderes Thema)

    c ya, cPanther


Anmelden zum Antworten