Page 1 sur 1

Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : ven. 23/avr./2021 9:58
par grendizer
Bonjour dans mon code j'aimerai que le titre que j'ai mis dans
ListIconGadget qui s'appelle test soit écris en bleu , j'ai changer la taille de la police , la couleur du fond mais pas la couleur du texte
est ce que c'est possible en PB de faire ça j'ai lu la doc mais pas trouver .Merci

Code : Tout sélectionner

EnableExplicit

;-- Fenetres 
Enumeration windows
  #Form_Main 
  EndEnumeration
  ;-- Gadgets
Enumeration  gadgets     
  #List_test
  #Font_List
  EndEnumeration

;-- Fonts
LoadFont(#Font_List, "Arial",12, #PB_Font_Bold)
;-- Variables 
Global quitter
;-- Procedures 
;-- Fermer ou quitter le programme 
Procedure close()
  quitter = EventWindow()
  CloseWindow_(quitter)
  If quitter=#Form_Main
    End
  EndIf   
EndProcedure
  

;-- Fenetre main 
Procedure open_Main()
  OpenWindow(#Form_Main,0,0,500,420,"ROSA",#PB_Window_SystemMenu|#PB_Window_TitleBar|#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
  SetWindowColor(#Form_Main, $E16941) ; 

  ListIconGadget(#List_test,10,100,480,280,"TEST :  ",280, #PB_ListIcon_GridLines|#PB_ListIcon_CheckBoxes)
SetGadgetColor(#List_test, #PB_Gadget_FrontColor,$A3A44F)
SetGadgetColor(#List_test, #PB_Gadget_BackColor, $5C3AB2) 
SetGadgetFont(#List_test,FontID(#Font_List)) 
  BindEvent(#PB_Event_CloseWindow,@Close(),#Form_Main)
EndProcedure  



;-- Boucle du programme 

open_Main()

Repeat
  WaitWindowEvent()
  ForEver


Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : ven. 23/avr./2021 13:37
par MLD
Oui , mais il faut passé par les api( s)

Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : ven. 23/avr./2021 15:18
par Kwai chang caine
Peut être comme ça si c'est sous windows, avec le code de SHARDIK

Code : Tout sélectionner

;PB5.60 Run-time change of ListIcon column header text colour

EnableExplicit

Enumeration
#Win
#List1
#List2
#BtnB
#BtnR
EndEnumeration

#Ig = #PB_Ignore

Global igExit.i = #False
Global igDefListIconCallback.i
Global igHdTxtClr.i = RGB(0,0,0)

Procedure CustomListIconCallback(iWinHandle.i, iMsg.i, wParam.i, lParam.i)
;#------------------------------------------------------------------------
Protected *NMCUSTOMDRAW.NMCUSTOMDRAW
Protected *NMHDR.NMHDR
Protected iResult.i = CallWindowProc_(igDefListIconCallback, iWinHandle, iMsg, wParam, lParam)

          If iMsg = #WM_NOTIFY

                 *NMHDR = lParam

                 If *NMHDR\code = #NM_CUSTOMDRAW

                         *NMCUSTOMDRAW = lParam

                         Select *NMCUSTOMDRAW\dwDrawStage

                                Case #CDDS_PREPAINT
                                     iResult = #CDRF_NOTIFYITEMDRAW

                                Case #CDDS_ITEMPREPAINT
                                     SetTextColor_(*NMCUSTOMDRAW\hdc, igHdTxtClr)
                         EndSelect
                 EndIf
          EndIf

          ProcedureReturn iResult
EndProcedure

OpenWindow(#Win, 200, 100, 400, 400, "ListIcon: change header text colour")

 ListIconGadget(#List1, 10, 10, 380, 150, "Name", 110, #PB_ListIcon_GridLines)
AddGadgetColumn(#List1, 1, "Address", 260)
  AddGadgetItem(#List1, -1, "Harry Rannit"   + #LF$ + "12 Parliament Way, Battle Street, By the Bay")
  AddGadgetItem(#List1, -1, "Ginger Brokeit" + #LF$ + "130 PureBasic Road, BigTown, CodeCity")
  AddGadgetItem(#List1, -1, "Didi Foundit"   + #LF$ + "321 Logo Drive, Mouse House, Downtown")

 ListIconGadget(#List2, 10, 200, 380, 150, "Name", 110, #PB_ListIcon_GridLines)
AddGadgetColumn(#List2,  1, "Address", 260)
  AddGadgetItem(#List2, -1, "Harry Rannit"   + #LF$ + "12 Parliament Way, Battle Street, By the Bay")
  AddGadgetItem(#List2, -1, "Ginger Brokeit" + #LF$ + "130 PureBasic Road, BigTown, CodeCity")
  AddGadgetItem(#List2, -1, "Didi Foundit"   + #LF$ + "321 Logo Drive, Mouse House, Downtown")

   ButtonGadget(#BtnB, 100, 360, 100, 25, "Blue")
   ButtonGadget(#BtnR, 200, 360, 100, 25, "Red")


igDefListIconCallback = SetWindowLongPtr_(GadgetID(#List1), #GWL_WNDPROC, @CustomListIconCallback())
igDefListIconCallback = SetWindowLongPtr_(GadgetID(#List2), #GWL_WNDPROC, @CustomListIconCallback())

Repeat
         Select  WaitWindowEvent(1)

                 Case #PB_Event_CloseWindow: igExit = #True
                 Case #PB_Event_Gadget

                           Select EventGadget()

                                  Case #BtnB
                                              igHdTxtClr = RGB(0,0,200)
                                              ResizeGadget(#List1,#Ig,#Ig,#Ig,#Ig) ;"Refresh"
                                              ResizeGadget(#List2,#Ig,#Ig,#Ig,#Ig)

                                  Case #BtnR
                                              igHdTxtClr = RGB(200,0,0)
                                              ResizeGadget(#List1,#Ig,#Ig,#Ig,#Ig)
                                              ResizeGadget(#List2,#Ig,#Ig,#Ig,#Ig)
                           EndSelect
         EndSelect

Until igExit = #True

End

Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : ven. 23/avr./2021 15:42
par grendizer
Merci votre aide à tous

Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : ven. 23/avr./2021 15:52
par MLD
Salut KCC
Oui je ne connais pas mieux

Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : sam. 24/avr./2021 19:36
par Kwai chang caine
MLD a écrit : ven. 23/avr./2021 15:52 pas mieux
DES COULEURS ET DES LETTRES

Image

:lol:

Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : sam. 24/avr./2021 23:58
par Ollivier

Code : Tout sélectionner

75+(3*(10+7) )

Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : lun. 26/avr./2021 13:39
par Mesa
(10+5+3)*7

Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : lun. 26/avr./2021 15:40
par Mindphazer
(10 - 4) * 7 * 3

Re: Peux t'on changer la couleur du titre dans une ListIconGadget

Publié : lun. 26/avr./2021 17:39
par Kwai chang caine
((L + X + III) * II)