Condividi:        

visualizzare commento al passaggio del mouse su una Userform

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

visualizzare commento al passaggio del mouse su una Userform

Postdi matzap » 28/08/13 14:16

Ciao,
ho una casella di testo e al passaggio del mause su di essa vorrei visualizzare una commento, o una immagine per spiegare cosa deve essere inserito all'interno della casella.
Se rendo l'immagine invisibile, come posso renderal visibile al passaggio del mouse sulla casella di testo?


ciao
excel 2010
matzap
Utente Senior
 
Post: 246
Iscritto il: 16/04/13 08:27

Sponsor
 

Re: visualizzare commento al passaggio del mouse su una User

Postdi Anthony47 » 28/08/13 22:30

Il textbox dispone della proprieta' "ControlTipText": il testo impostato in questa proprieta' sara' visualizzato quando il mouse e' posizionato sul controllo.
ControlTipText puo' essere impostato in fase di progettazione del controllo (compilare la riga di quella proprieta') oppure puo' essere modificata con una istruzione tipo
Codice: Seleziona tutto
Me.TextBox1.ControlTipText = "Inserire questo o quello"

Oppure puoi usare l' evento TextBox1_MouseMove per gestire con macro qualcosa di piu' complesso.
Codice: Seleziona tutto
Private Sub TextBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
'qui le istruzioni per fare quel che serve
End Sub

Se hai una immagine nascosta che vuoi rendere visibile userai l' istruzione
Codice: Seleziona tutto
ActiveSheet.Shapes("NomeImmagine").Visible = True   'oppure = False 'per nascondere


Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: visualizzare commento al passaggio del mouse su una User

Postdi scossa » 29/08/13 00:31

Anthony47 ha scritto:Oppure puoi usare l' evento TextBox1_MouseMove per gestire con macro qualcosa di piu' complesso.
Codice: Seleziona tutto
Private Sub TextBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
'qui le istruzioni per fare quel che serve
End Sub



Solo un'osservazione: l'evento MouseMove() viene continuamente scatenato muovendo il mouse sulla textbox, non è il massimo dell'efficienza, purtroppo non esiste il metodo MouseOver() e quindi bisognerebbe gestire questa specie di "ricorsività" con una static .....
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 427
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: visualizzare commento al passaggio del mouse su una User

Postdi matzap » 29/08/13 09:33

Grazie Anthony,
ho usato sia il "ControlTipText" che il "Private Sub TextBox1_MouseMove".

la sub è molto semplice:
Private Sub TextBox5_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
UserForm7.Image1.Visible = True
End Sub
e al passaggio del mouse mi mostra una immagine che però non si richiude quando tolgo il mouse. se inserisco una istruzione di chiusura nella macro, la apre e la richiude immediatamente e non si vede niente.
come posso fare?

ciao
excel 2010
matzap
Utente Senior
 
Post: 246
Iscritto il: 16/04/13 08:27

Re: visualizzare commento al passaggio del mouse su una User

Postdi peppo55 » 29/08/13 15:38

Ciao matzap

anche l' UserForm ha "MouseMove"
peppo

Excel 2010
peppo55
Utente Senior
 
Post: 167
Iscritto il: 30/09/12 13:51

Re: visualizzare commento al passaggio del mouse su una User

Postdi scossa » 29/08/13 16:26

peppo55 ha scritto:Ciao matzap

anche l' UserForm ha "MouseMove"


Scusate se insisto, ma provate a creare una userform con all'interno una Label (p.e. height=50, width=150) che sia ben visibile.
Mette questo codice nel modulo della UserForm:
Codice: Seleziona tutto
Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  Static j As Long, k As Long
  j = j + 1
  If j Mod 50 = 0 Then
    j = 1
    k = k + 1
  End If
  If k Mod 30 = 0 Then k = 1
  Cells(j, k).Value = j
End Sub

e poi lanciate la userform e muovete il mouse sulla label ......
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 427
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: visualizzare commento al passaggio del mouse su una User

Postdi peppo55 » 29/08/13 20:48

Ciao scossa

volevo solo indicare a matzap che utilizzando MouseMove sull' apertura del UserForm, può non visualizzare l'immagine.
peppo

Excel 2010
peppo55
Utente Senior
 
Post: 167
Iscritto il: 30/09/12 13:51

Re: visualizzare commento al passaggio del mouse su una User

Postdi peppo55 » 29/08/13 21:24

correggo quanto detto.

All' apertura del userform si può impostare l'mmagine a visibile=False. al passaggio del mouse sulla textbox si imposta l'mmagine a visibile=True e quando si sposta il mouse sul userform si imposta l'mmagine a visibile=False .
peppo

Excel 2010
peppo55
Utente Senior
 
Post: 167
Iscritto il: 30/09/12 13:51

Re: visualizzare commento al passaggio del mouse su una User

Postdi Anthony47 » 29/08/13 21:32

Quanto detto da peppo si traduce in:
1) lasciare
Codice: Seleziona tutto
Private Sub TextBox5_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
UserForm7.Image1.Visible = True
End Sub

2) aggiungere
Codice: Seleziona tutto
Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
UserForm7.Image1.Visible = False
End Sub

Ciao a tutti.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: visualizzare commento al passaggio del mouse su una User

Postdi scossa » 29/08/13 21:40

peppo55 ha scritto:correggo quanto detto.

All' apertura del userform si può impostare l'mmagine a visibile=False. al passaggio del mouse sulla textbox si imposta l'mmagine a visibile=True e quando si sposta il mouse sul userform si imposta l'mmagine a visibile=False .


Ciao peppo,

non volevo criticare questi suggerimenti, solo far notare che il metodo MouseMove va usato con cautela, tenendo ben presente qual'è il suo comportamento.
Nel caso in esame non ci sono grossi problemi: muovendo il mouse continua ad impostare a true la proprietà (oppure a false se fuori dalla textbox), ma se il codice da eseguire fosse più "invasivo" potrebbe pesare non poco sulle prestazioni.
Tutto qui.
Ciao.
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 427
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: visualizzare commento al passaggio del mouse su una User

Postdi matzap » 30/08/13 09:52

ciao e grazie a tutti.
ciò che non avevo compreso era di impostare
UserForm7.Image1.Visible = False sulla Userform direttamente.....
grazie
excel 2010
matzap
Utente Senior
 
Post: 246
Iscritto il: 16/04/13 08:27


Torna a Applicazioni Office Windows


Topic correlati a "visualizzare commento al passaggio del mouse su una Userform":


Chi c’è in linea

Visitano il forum: Nessuno e 26 ospiti