Salve a tutti
ho una MSHFlexGrid e vorrei visualizzare tooltip diverse a seconda della colonna su cui sono in quel momento.
Come posso fare?
Io per ora ho fatto così
codice:
Private Sub hfgGriglia_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim gap
Dim gapRig
Dim bEsciSub
Dim sVecchiaTool
bEsciSub = False
With hfgGriglia
If Not sVecchiaTool = "" Then Exit Sub
For j = 1 To .Cols - 1
gap = j - 1
If 0 < X And .ColPos(1) > X Then Exit Sub
If .ColPos(gap) < X And .ColPos(j) > X And .RowPos(0) <= Y And 240 > Y Then
Select Case .TextMatrix(0, gap)
Case "O"
If Not .ToolTipText = "Imposta il messaggio come 'Non letto/letto'" Then .ToolTipText = "Imposta il messaggio come 'Non letto/letto'"
Case "Preso da"
If Not .ToolTipText = "Ordina l'elenco per nominativo di chi ha registrato il messaggio" Then .ToolTipText = "Ordina l'elenco per nominativo di chi ha registrato il messaggio"
Case "Data"
If Not .ToolTipText = "Ordina l'elenco per data" Then .ToolTipText = "Ordina l'elenco per data"
Case "Ora"
If Not .ToolTipText = "Ordina l'elenco per ora" Then .ToolTipText = "Ordina l'elenco per ora"
Case "Ti ha cercato"
If Not .ToolTipText = "Ordina l'elenco per nome di chi ha chiamato" Then .ToolTipText = "Ordina l'elenco per nome di chi ha chiamato"
Case "Nota"
If Not .ToolTipText = "Ordina l'elenco per nota" Then .ToolTipText = "Ordina l'elenco per nota"
End Select
sVecchiaTool = .ToolTipText
bEsciSub = False
Exit For
Else
If j = lColonnaNotifica Then .ToolTipText = "Imposta il messaggio come 'Non letto/letto'"
bEsciSub = True
End If
Next j
If bEsciSub Then
.ToolTipText = ""
bEsciSub = False
End If
End With
End Sub
e funziona abbastanza bene. L'unico problema è che la tooltip fa un effetto continuo tipo refresh, molto fastidioso e vorrei eliminarlo.
Grazie in anticipo