Seite 1 von 1

Checkbox Text Hintergrund

Verfasst: 26.02.2020 05:18
von udg
Eine Frage,

gibt es inzwischen eine Möglichkeit, dass man die Hintergrundfarbe eines Checkbox Gadget Textes ändern kann?

ich hab ein Beispiel aber es ist nicht zufrieden stellend und ausserdem, soviel Code notwendig?

Code: Alles auswählen

Global GadgetFrg=#Black, GadgetBkg = CreateSolidBrush_(#Green)

Procedure WindowProc(hWnd, Msg, wParam, lParam)
  result = #PB_ProcessPureBasicEvents
  If Msg=#WM_CTLCOLORSTATIC
    If GetDlgCtrlID_(lparam) = 1
      SetBkMode_(wParam,#TRANSPARENT)
      SetTextColor_(wParam,GadgetFrg)
      result = GadgetBkg
    EndIf
  EndIf
  ProcedureReturn result
EndProcedure

OpenWindow(0,0,0,260,160,"test",#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)


CheckBoxGadget(1,10,20,245,20,"Checkbox gadget with a green background")
CheckBoxGadget(2,10,40,245,20,"Checkbox gadget with a green background")
SetWindowCallback(@WindowProc())
Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow

DeleteObject_(GadgetBkg)
die zweite Checkbox bekommt kein grün? hmm

Grüße

Re: Checkbox Text Hintergrund

Verfasst: 26.02.2020 08:03
von Mijikai
Beide grün:

Code: Alles auswählen

Global GadgetFrg=#Black, GadgetBkg = CreateSolidBrush_(#Green)

Procedure WindowProc(hWnd, Msg, wParam, lParam)
  Protected dia.i
  If Msg=#WM_CTLCOLORSTATIC
    dia = GetDlgCtrlID_(lparam)
    If dia = 1 Or dia = 2
      SetBkMode_(wParam,#TRANSPARENT)
      SetTextColor_(wParam,GadgetFrg)
      ProcedureReturn GadgetBkg
    EndIf
  EndIf
  ProcedureReturn #PB_ProcessPureBasicEvents 
EndProcedure

OpenWindow(0,0,0,260,160,"test",#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
CheckBoxGadget(1,10,20,245,20,"Checkbox gadget with a green background")
CheckBoxGadget(2,10,40,245,20,"Checkbox gadget with a green background")
SetWindowCallback(@WindowProc())
Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow
DeleteObject_(GadgetBkg)

Re: Checkbox Text Hintergrund

Verfasst: 26.02.2020 16:58
von udg
:allright:

danke für den fix.
nun kann ich meine 13 checkboxen anpassen

prima

Re: Checkbox Text Hintergrund

Verfasst: 26.02.2020 21:07
von HeX0R
Die Textfarbe wird so übrigens nicht verändert!
Dazu müsste man "Moderne Themen Unterstützung" in den Compileroptionen deaktivieren, was eher niemand macht.
Irgendwo geistert noch ein Beispiel von FluidByte hier rum, das ginge auch mit der o.g. Option.