CheckBox/GroupBox mit Text hat weißen Hintergrund


  • Mod

    lmaa schrieb:

    Nein, ich glaube er meint eine richtige GroupBox (BS_GROUPBOX)

    Ja! Und?
    Alle Controls in Dialogen sind so konstruiert, dass sie auf der seben Ebene liegen. Wenn er Heckboxen als Kinder der Groupbox alget, dann muss er Probleme bekommen...

    Wie immer: Man lese mal ein Tutorial oder die Doku... 🕶

    Wir programmieren ja nicht in VB oder? 😉





  • Das kann man natürlich auch machen, ist aber sehr unlogisch, für einen Anfänger kaum verständlich und zu viel Aufwand.

    Nachdem ich hier meinen Spaß hatte nun eine ganz einfache Lösung:

    SetClassLongPtr(hwnd_check_group,GCL_HBRBACKGROUND,(COLOR_BTNFACE+1));
    

    Gibt der GroupBox die Hintergrundfarbe von Buttons.(Bitte nicht SetClassLong!)

    falls es noch nötig ist Nachrichten abzufangen:

    SetWindowLongPtr(hwnd_check_group,GWLP_WNDPROC,(int)&WndProc);
    

  • Mod

    SetClassLongPtr ist keine Lösung! Weil es nicht nur ein Fenster betrifft, sondern alle Fenster in Deinem Prozess!



  • Es betrifft nicht alle Fenster, sondern nur Fenster einer Klasse. Wenn natürlich jede GroupBox eine andere Farbe haben soll...


  • Mod

    lmaa schrieb:

    Es betrifft nicht alle Fenster, sondern nur Fenster einer Klasse. Wenn natürlich jede GroupBox eine andere Farbe haben soll...

    Korekt. Mein Einwurf war zu allgemein. Es betrifft alle Buttons des aktuellen Prozesses!!!



  • Das war ja auch das Ziel oder nicht?

    Aber bei normalen Buttons wie z.B. einer CheckBox sollte das keine Wirkung haben. Wenn wäre es aber auch egal, es ist ja die Standarthintergrundfarbe für Buttons also ändert sich nichts.



  • Warum erzeugt ihr nicht einfach eine eigene Fensterklasse mit der richtigen Hintergrundfarbe? Das ist kein großer Aufwand und funktioniert super. Mache ich nur so.

    Es betrifft alle Buttons des aktuellen Prozesses!!!

    Nein, nicht wirklich. Wie "lmaa" schon schrieb kann man solche Eigenschaften bei normalen Buttons gar nicht ändern weil sie keine richtigen Fenster sind.


  • Mod

    Paul P. schrieb:

    Nein, nicht wirklich. Wie "lmaa" schon schrieb kann man solche Eigenschaften bei normalen Buttons gar nicht ändern weil sie keine richtigen Fenster sind.

    Sie sind es sehr wohl, und bei Radios+Checkboxen könnte dies in der gesamten Anwendung unerwünschte Resultate haben.



  • Habe ich nie so genau ausgetestet, schon möglich. Ich fand die GroupBox nie wirkich nützlich und habe immer meine eigene Klasse erzeugt. Finde ich auch etwas sauberer.

    Mit "keine richtigen Fenster" meinte ich das sie auf sowas normalerweise nicht reagieren. Windows behandelt sie natürlich trotzdem als Fenster.


  • Mod

    Paul P. schrieb:

    Mit "keine richtigen Fenster" meinte ich das sie auf sowas normalerweise nicht reagieren. Windows behandelt sie natürlich trotzdem als Fenster.

    Tun sie doch 😉 Auch sie geben Notifications ab.
    Sind dann Statics und ReadOnly Edit Controls auch keine richtigen Fenster? 😉


Anmelden zum Antworten