Differenze tra le versioni di "Chiudere un ToolTip anticipatamente"

Da Gambas-it.org - Wikipedia.
 
(13 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
Il ''ToolTip'' è una finestrina, associata ad un Controllo, che viene mostrata quando il puntatore del mouse sta fermo sul Controllo medesimo per alcuni secondi di seguito. Il ''ToolTip'' resta a sua volta visibile per circa 10 secondi. E' possibile farlo chiudere anticipatamente.
+
Il ''ToolTip'' è una finestrina, associata ad un Controllo grafico, che viene mostrata quando il puntatore del mouse sta fermo sul Controllo medesimo per alcuni secondi di seguito. Il ''ToolTip'' resta a sua volta visibile per circa 10 secondi. E' possibile farlo chiudere anticipatamente.
  
 
+
Nell'esempio seguente il ''ToolTip'' è associato ad un ''Button'' posto sul ''Form'', e sarà eliminato dopo soli 4 secondi dall'entrata del puntatore del mouse nel ''Button'':
Nell'esempio seguente il ''ToolTip'' è associato ad un ''Button'' posto sul ''Form'', e sarà eliminato dopo soli 4 secondi dall'entrata del puntatore del mouse nel ''Button'' (si porrà sul ''Form'' anche l'oggetto ''Timer'', impostando nell'IDE di Gambas il suo ritardo a ms 1, affinché la sua ''partenza'' sia immediata):
+
Private Timer1 As Timer
  '''Private''' a As Byte   
+
  Private b As Byte   
 
        
 
        
 
   
 
   
  '''Public''' Sub Form_Open()   
+
  Public Sub Button1_Enter()
 +
 +
  Button1.Tooltip = "Testo qualsiasi"
 +
 +
  With Timer1 = New Timer As "Timer1"
 +
  .delay = 1000 
 +
  .Start 
 +
  End With  
 
        
 
        
  Button1.Tooltip = "Testo qualsiasi"
+
End
 
   
 
   
'''End'''
 
 
   
 
   
 +
Public Sub Button1_Leave()
 
   
 
   
'''Public''' Sub Button1_Enter()
+
  Timer1.Stop
     
+
  b = 0
  With Timer1
+
   
    .delay = 1000 
+
  End
    .Start 
 
  End With  
 
     
 
  '''End'''
 
     
 
 
   
 
   
'''Public''' Sub Timer1_Timer() 
 
     
 
  Inc a 
 
     
 
  If a = 4 Then
 
 
   
 
   
  <FONT color=#006400>' ''Annulliamo il "ToolTip", assegnandogli valore stringa "Null":''</font>
+
  Public Sub Timer1_Timer() 
    Button1.Tooltip = Null
 
    a = 0
 
 
   
 
   
<FONT color=#006400>' ''Ripristiniamo il "ToolTip", altrimenti non sarebbe possibile farlo mostrare una seconda volta:''</font>
+
  Me.Title = b
    Button1.Tooltip = "Testo qualsiasi"
 
 
   
 
   
  Endif
+
<FONT color=gray>' ''Fa durare il "ToolTip" soltanto 4 secondi:''</font>
 +
  If b == 4 Then
 +
    Timer1.Stop
 +
<FONT color=gray>' ''Annulla il "ToolTip", assegnandogli valore stringa "Null":''</font>
 +
    Button1.Tooltip = Null
 +
  Endif
 
   
 
   
 +
  Inc b
 
   
 
   
  <FONT color=#006400>' ''In alternativa, possiamo utilizzare a proprietà booleana ".ShowTooltips" della Classe "Application",''
+
  End
' ''tenendo presente, però, che quella proprietà impedisce il mostrarsi di ogni ToolTip eventualmente previsto nel codice.''
+
Tale codice è ovviamente utile per aumentare o comunque più in generale per impostare la durata della comparsa del ''ToolTip''.
' ''Per consentire nuovamente l'apparire del "ToolTip" sarà, dunque, necessario poi reimpostare quella proprietà a "True":''
 
    '''If a = 4 Then'''
 
 
 
' ''Impediamo il mostrarsi di ogni "ToolTip" del programma:''
 
      '''Application.ShowTooltips = False'''
 
      '''a = 0'''
 
    '''Endif'''
 
 
 
' ''Consentiamo nuovamente il mostrarsi di ogni "ToolTip":''
 
    '''Application.ShowTooltips = True'''</font>
 
     
 
'''End'''
 

Versione attuale delle 10:50, 18 ott 2024

Il ToolTip è una finestrina, associata ad un Controllo grafico, che viene mostrata quando il puntatore del mouse sta fermo sul Controllo medesimo per alcuni secondi di seguito. Il ToolTip resta a sua volta visibile per circa 10 secondi. E' possibile farlo chiudere anticipatamente.

Nell'esempio seguente il ToolTip è associato ad un Button posto sul Form, e sarà eliminato dopo soli 4 secondi dall'entrata del puntatore del mouse nel Button:

Private Timer1 As Timer
Private b As Byte  
     

Public Sub Button1_Enter()

 Button1.Tooltip = "Testo qualsiasi"

 With Timer1 = New Timer As "Timer1"
  .delay = 1000  
  .Start  
 End With  
     
End


Public Sub Button1_Leave()

 Timer1.Stop
 b = 0

End


Public Sub Timer1_Timer()  

 Me.Title = b

' Fa durare il "ToolTip" soltanto 4 secondi:
 If b == 4 Then
   Timer1.Stop
' Annulla il "ToolTip", assegnandogli valore stringa "Null":
   Button1.Tooltip = Null
 Endif

 Inc b

End

Tale codice è ovviamente utile per aumentare o comunque più in generale per impostare la durata della comparsa del ToolTip.