Una tip sui ToolTip (Visual Studio 2008)

Oggi ho utilizzato il controllo ToolTip per gestire un caso particolare, ovvero in una form al momento di selezionare un valore da una combobox, vado a modificare un altro valore in una text box che è editabile ma dipende (per default) dalla prima selezione. Siccome è un valore importante per generare una fatturazione, ho ritenuto corretto informare l'utente della modifica automatica effettuata, utilizzando un Balloon (Fumetto). Per fare questo ho utilizzato il metodo ToolTip.Show che permette di visualizzare il ToolTip senza che il  mouse sia sopra al controllo, passando tra i parametri il testo da visualizzare, il controllo associato e il tempo di visualizzazione:

Me.ToolTip1.Show("Attenzione il valore è cambiato!", Me.TextBox1, 5000)

Questo metodo però presenta un Bug non risolto già dalla versione VS 2005, ovvero il fumetto non viene allineato correttamente con il centro del controllo LA PRIMA VOLTA che il metodo Show viene richiamato con i nuovi parametri:

La SECONDA VOLTA invece tutto risulta OK:

 

...allineando correttamente il fumetto. Come risolvere il bug? Semplicemente richiamando 2 volte il metodo show:

Me.ToolTip1.Active = False

Me.ToolTip1.Show("Attenzione il valore è cambiato!", Me.TextBox1, 5000)

Me.ToolTip1.Active = True

Me.ToolTip1.Show("Attenzione il valore è cambiato!", Me.TextBox1, 5000)

Per evitare inutile dispendio di risorse imposto anche la proprietà Active del ToolTip a False la prima volta che richiamo il metodo. Questo bug immagino sia dovuto ad un errore di calcolo delle coordinate in fase di "costruzione" della finestra contenente il Balloon.

Spero di aiutare qualcuno a risolvere questo problema nel caso si presentasse.

Alberto De Luca.

Print | posted on giovedì 21 agosto 2008 22.07

Feedback

# re: Una tip sui ToolTip (Visual Studio 2008)

Left by Sam at 16/11/2010 9.58
Gravatar Il problema in VS2008 è stato risolto da Microsoft.

# re: Una tip sui ToolTip (Visual Studio 2008)

Left by Alberto De Luca at 16/11/2010 10.14
Gravatar Perfetto, grazie per la precisazione.

# re: Una tip sui ToolTip (Visual Studio 2008)

Left by Sam at 19/11/2010 10.16
Gravatar rettifico: Se si lavora con la tastiera cambiando elemento col TAB il problema non si presenta. Persiste il problema con mouseEnter mouseClick eccetera..

Your comment:





 
Please add 6 and 4 and type the answer here:

Copyright © Alberto De Luca

Design by Bartosz Brzezinski

Design by Phil Haack Based On A Design By Bartosz Brzezinski