Mostrare con diversi colori i nomi dei file in una FileView
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