Mostrare con diversi colori i nomi dei file in una FileView

Da Gambas-it.org - Wikipedia.

I nomi dei file mostrati in una FileView appaiono tutti del medesimo colore.

La FileView è costituita, come "Figlio", da un Oggetto Panel, che a sua volta contiene, come proprio "Figlio", un Oggetto IconView.

Va precisato che il FileView si serve proprio di tale IconView per mostrare i file.

La IconView possiede la Proprietà ".Keys", i cui elementi rappresentano il nome di ogni file mostrato e posseggono la Proprietà ".RichText".

Per ottenere colori diversi per il nome di ciascun file mostrato, sarà sufficiente attribuire impostare nella predetta Proprietà ".RichText" il tag html: <FONT Color=......> [Nota 1]

Mostriamo un esempio in cui la visualizzazione dei file nel Controllo FileView è in modalità predefinita "non dettagliata":

Private iv As IconView


Public Sub Form_Open()

 Dim p As Panel

' Ottiene la variabile che punta al "Panel", "figlio" del "FileView":
 p = FileView1.Children[0]
 
' Ottiene la variabile che punta al Controllo "IconView", "figlio" del "Panel":
 iv = p.Children[0]

' Saranno mostrati e presi in considerazione i file presenti nella cartella "/tmp":
 FileView1.Dir = "/tmp"
 FileView1.Refresh
 
End

Public Sub FileView1_Refresh()

 Dim s As String

' Per esempio, se il nome del file ha al suo interno la lettera "b" (sia minuscola che maiuscola), allora il suo testo diventa rosso:
 For Each s In iv.Keys
   If File.Name(s) Like "*b*" Then
     iv[s].RichText = "<FONT Color=red>" & iv[s].Text & "</font>"
   Endif
 Next

End


Note

[1] Questa soluzione è stata fornita da "BruceSteers", membro del sito: https://forum.gambas.one/index.php