ListIconGadget change color of text in just certain columns

Just starting out? Need help? Post your questions and find answers here.
User avatar
Distorted Pixel
Enthusiast
Enthusiast
Posts: 233
Joined: Sun Aug 29, 2021 4:34 am

ListIconGadget change color of text in just certain columns

Post by Distorted Pixel »

Hi,

I have been successful so far in changing colors of rows, but I need the numbers only to be white. How would I go about doing this? do I have the code the way it needs to be to do this? Or do I need to change it some way?

https://mega.nz/file/o9VkEQxA#tzU5z9AC7 ... -F3_zWlxsI

Code: Select all

; player stat sheet include

Enumeration
  #ImgGadget  
  #IconGadget
  #EditGadget
  #GadgetItem
  #TxtGadget
EndEnumeration

Global NPC_Name.s = "Tony Pennock"
Global KP, TK, PS, SH, PC, HE, ST, SP, BC, FT
KP = 50 : TK = 25 : PS = 23 : SH = 11 : PC = 71 : HE = 23 : ST = 66 : SP = 31 : BC =26 : FT = 100

  OpenWindow(0, 0, 0, 1024, 768, "Ultimate Football Manager", #PB_Window_SystemMenu | #PB_Window_ScreenCentered |
                                                              #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget)
  ImgFile = LoadImage(0, "Images/PlayerStatsSheet.png")
    ImageGadget(#ImgGadget, 0, 0, 1024, 768, ImgFile)
    DisableGadget(#ImgGadget, #True)
  InitSprite()
  
    LoadFont(0, "Media/nevis.ttf", 25);, #PB_Font_Bold)
    
      If StartDrawing(ImageOutput(#ImgGadget))
        DrawingFont(FontID(0))
        DrawText(5, 5, NPC_Name, $0025B8, $000000)
        StopDrawing()
      EndIf
      
      ImageGadget(#ImgGadget, 0, 0, WindowWidth(0), WindowHeight(0), ImageID(0))
      DisableGadget(#ImgGadget, #True)

  LoadFont(0, "Media/nevis.ttf", 11, #PB_Font_Bold)
  ListIconGadget(#IconGadget, 5, 65, 8600, 540,"", 155, #PB_ListIcon_GridLines | #LVS_NOCOLUMNHEADER)
  AddGadgetColumn(#IconGadget, 1, "", 45) ; column 1
  AddGadgetColumn(#IconGadget, 2, "", 140) ; column 2
  AddGadgetColumn(#IconGadget, 3, "", 45) ; column 3
  SetGadgetColor(#IconGadget, #PB_Gadget_LineColor, $259F4B)  
  SetGadgetFont(#IconGadget, FontID(0))
  SetGadgetColor(#IconGadget, #PB_Gadget_BackColor, $000000) : SetGadgetColor(#IconGadget, #PB_Gadget_FrontColor, $0025B8)
  
  ; column 1
  AddGadgetItem(#IconGadget, 0, "Goalkeeper")
  AddGadgetItem(#IconGadget, 1, "")
  
  AddGadgetItem(#IconGadget, 2, "Keeping           " + Chr(10) + KP + Chr(10) + "Heading            " + Chr(10) + HE)
  SetGadgetItemColor(#IconGadget, 2, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 2, #PB_Gadget_FrontColor, $00A1B8)
  
  AddGadgetItem(#IconGadget, 3, "Tackling           " + Chr(10) + TK + Chr(10) + "Stamina             " + Chr(10) + ST)
  SetGadgetItemColor(#IconGadget, 3, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 3, #PB_Gadget_FrontColor, $00A1B8)
  
  AddGadgetItem(#IconGadget, 4, "Passing            " + Chr(10) + PS + Chr(10) + "Set Plays           " + Chr(10) + SP)
  SetGadgetItemColor(#IconGadget, 4, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 4, #PB_Gadget_FrontColor, $00A1B8)
  
  AddGadgetItem(#IconGadget, 5, "Shooting          " + Chr(10) + SH + Chr(10) + "Ball Control      " + Chr(10) + BC)
  SetGadgetItemColor(#IconGadget, 5, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 5, #PB_Gadget_FrontColor, $00A1B8)
  
  AddGadgetItem(#IconGadget, 6, "Pace                 " + Chr(10) + PC +Chr(10) + "Fitness            " + Chr(10) + FT)
  SetGadgetItemColor(#IconGadget, 6, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 6, #PB_Gadget_FrontColor, $00A1B8)
  
  Repeat
    Event = WaitWindowEvent()
  
  Until Event = #PB_Event_CloseWindow
  
EndProcedure
To be popular is way to much work. I just want to be me, myself and I. Oh no, does that mean I'm bipolar? :shock:

No one cares how much you know until they know how much you care
RASHAD
PureBasic Expert
PureBasic Expert
Posts: 4636
Joined: Sun Apr 12, 2009 6:27 am

Re: ListIconGadget change color of text in just certain columns

Post by RASHAD »

Code: Select all

; player stat sheet include
UsePNGImageDecoder()

Enumeration
  #ImgGadget  
  #IconGadget
  #EditGadget
  #GadgetItem
  #TxtGadget
EndEnumeration

Global NPC_Name.s = "Tony Pennock"
Global KP, TK, PS, SH, PC, HE, ST, SP, BC, FT
KP = 50 : TK = 25 : PS = 23 : SH = 11 : PC = 71 : HE = 23 : ST = 66 : SP = 31 : BC =26 : FT = 100

  OpenWindow(0, 0, 0, 1024, 768, "Ultimate Football Manager", #PB_Window_SystemMenu | #PB_Window_ScreenCentered |
                                                              #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget)
;   ImgFile = LoadImage(0, "Images/PlayerStatsSheet.png")
;     ImageGadget(#ImgGadget, 0, 0, 1024, 768, ImgFile)
;     DisableGadget(#ImgGadget, #True)
;   InitSprite()
;   
;     LoadFont(0, "Media/nevis.ttf", 25);, #PB_Font_Bold)
;     
;       If StartDrawing(ImageOutput(#ImgGadget))
;         DrawingFont(FontID(0))
;         DrawText(5, 5, NPC_Name, $0025B8, $000000)
;         StopDrawing()
;       EndIf
;       
;       ImageGadget(#ImgGadget, 0, 0, WindowWidth(0), WindowHeight(0), ImageID(0))
;       DisableGadget(#ImgGadget, #True)

  LoadFont(0, "Media/nevis.ttf", 11, #PB_Font_Bold)
  ListIconGadget(#IconGadget, 5, 65, 8600, 540,"", 155, #PB_ListIcon_GridLines | #LVS_NOCOLUMNHEADER)
  AddGadgetColumn(#IconGadget, 1, "", 45) ; column 1
  AddGadgetColumn(#IconGadget, 2, "", 140) ; column 2
  AddGadgetColumn(#IconGadget, 3, "", 45) ; column 3
  SetGadgetColor(#IconGadget, #PB_Gadget_LineColor, $259F4B)  
  SetGadgetFont(#IconGadget, FontID(0))
  SetGadgetColor(#IconGadget, #PB_Gadget_BackColor, $000000) : SetGadgetColor(#IconGadget, #PB_Gadget_FrontColor, $0025B8)
  
  ; column 1
  AddGadgetItem(#IconGadget, 0, "Goalkeeper")
  AddGadgetItem(#IconGadget, 1, "")
  
  AddGadgetItem(#IconGadget, 2, "Keeping           " + Chr(10) + KP + Chr(10) + "Heading            " + Chr(10) + HE)
  SetGadgetItemColor(#IconGadget, 2, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 2, #PB_Gadget_FrontColor, $00A1B8)
  
  AddGadgetItem(#IconGadget, 3, "Tackling           " + Chr(10) + TK + Chr(10) + "Stamina             " + Chr(10) + ST)
  SetGadgetItemColor(#IconGadget, 3, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 3, #PB_Gadget_FrontColor, $00A1B8)
  
  AddGadgetItem(#IconGadget, 4, "Passing            " + Chr(10) + PS + Chr(10) + "Set Plays           " + Chr(10) + SP)
  SetGadgetItemColor(#IconGadget, 4, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 4, #PB_Gadget_FrontColor, $00A1B8)
  
  AddGadgetItem(#IconGadget, 5, "Shooting          " + Chr(10) + SH + Chr(10) + "Ball Control      " + Chr(10) + BC)
  SetGadgetItemColor(#IconGadget, 5, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 5, #PB_Gadget_FrontColor, $00A1B8)
  
  AddGadgetItem(#IconGadget, 6, "Pace                 " + Chr(10) + PC +Chr(10) + "Fitness            " + Chr(10) + FT)
  For item = 0 To CountGadgetItems(#IconGadget)
    SetGadgetItemColor(#IconGadget,-1,#PB_Gadget_FrontColor,$FFFFFF,1)
    SetGadgetItemColor(#IconGadget,-1,#PB_Gadget_FrontColor,$FFFFFF,3)    
  Next
  ;SetGadgetItemColor(#IconGadget, 6, #PB_Gadget_BackColor, $000000) : SetGadgetItemColor(#IconGadget, 6, #PB_Gadget_FrontColor, $00A1B8)
  
  Repeat
    Event = WaitWindowEvent()
  
  Until Event = #PB_Event_CloseWindow
  

Egypt my love
User avatar
Distorted Pixel
Enthusiast
Enthusiast
Posts: 233
Joined: Sun Aug 29, 2021 4:34 am

Re: ListIconGadget change color of text in just certain columns

Post by Distorted Pixel »

Thank you RASHAD, I realized after I posted this that I could have answered my own question LOL, but it was late and I had to go to bed.
All I had to do was add the For/Next loop to my code from your example and now things work great. The numbers are all white now.

Code: Select all

  For item = 0 To CountGadgetItems(#IconGadget)
    SetGadgetItemColor(#IconGadget,-1,#PB_Gadget_FrontColor,$FFFFFF,1)
    SetGadgetItemColor(#IconGadget,-1,#PB_Gadget_FrontColor,$FFFFFF,3)    
  Next
To be popular is way to much work. I just want to be me, myself and I. Oh no, does that mean I'm bipolar? :shock:

No one cares how much you know until they know how much you care
Post Reply