Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    [vb.net] ToolTip automatici

    Ciao a tutti, vorrei far comparire, se c'è bisogno, messaggi che indichino errori o suggerimenti nell'utilizzo del mio programmino!
    la cosa più simpatica credo sia l'utilizzo dei ToolTip, ma questi si attivano solamente col passaggio del mouse su un oggetto!!! Come posso fare si che il ToolTip compaia automaticamente senza il passaggio del Mouse????

  2. #2

    Re: [vb.net] ToolTip automatici

    Originariamente inviato da lelo
    Ciao a tutti, vorrei far comparire, se c'è bisogno, messaggi che indichino errori o suggerimenti nell'utilizzo del mio programmino!
    la cosa più simpatica credo sia l'utilizzo dei ToolTip, ma questi si attivano solamente col passaggio del mouse su un oggetto!!! Come posso fare si che il ToolTip compaia automaticamente senza il passaggio del Mouse????
    Il ToolTip viene gestito da VB, quindi non si puo' far apparire a comando, pero' tieni conto che qualsiasi oggetto grafico (form, controlli, ToolTip, ecc...) che appare a video non e' altro che una comunissima finestra (per questo il S.O. si chiama Windows!), ciascuna delle quali si differenzia dalle altre solo per le sue proprieta'...

    Detto questo, puoi "simulare" il ToolTip con una comunissima Label, che manterrai invisibile e farai apparire quando vorrai...

    Non ti resta che studiare l'aspetto grafico ed impostare le opportune proprieta' !

    Ad esempio, le proprieta' potrebbero essere (il codice e' per VB6, ma basta adattarlo...):
    .Visible = 0 'False
    .Appearance = 0 'Flat
    .BorderStyle = 1 'Fixed Single
    .AutoSize = -1 'True
    .BackColor = &H0080FFFF& 'giallino
    .BorderStyle = 1 'Fixed Single
    .UseMnemonic = 0 'False
    .WordWrap = -1 'True

    Poi ti puoi costruire un sub, che faccia apparire il messaggio voluto alle coordinate che vuoi, ad esempio:
    codice:
    Sub Msg(ByVal x As Integer, ByVal y As Integer, ByVal m As String)
       With labMsg
          .Top = y
          .Left = x
          .Caption = m
          .Visible = True
       End With
    End Sub
    ...e farai apparire il tuo "ToolTip" con:

    Msg x,y,"Prova di messaggio..."

    ...mentre lo farai sparire con labMsg.Visible = False



    E' solo uno spunto, spero ti possa essere utile, ciao !
    IceCube_HT (VB6 fan Club)

  3. #3
    scusa, ma è una roba poco pratica...se ho capito ben!!!

    Mi serve qualcosa di estremamente dinamico, nel senso che sia qualcosa che posso utilizzare ovunque e per ogni contesto in cui necessiti un avviso!!!

    A questo punto forse mi converrebbe costruire una class simile alla ToolTip ma con la differenza che compare su richiesta e non a seguito del passaggio del Mouse.

  4. #4
    Ho trovato questo...esattamente quello che cercavo...Grazie!!!

    http://binaryworld.net/Main/CodeDeta...velopment#copy

  5. #5
    Il codice che hai trovato è lunghissimo. E devo contraddire icecube_HT. Il tooltip si può effettivamente far apparire a comando, con una riga d codice:
    codice:
    ToolTip.Show(Testo, Me, X, Y, Durata)
    Ne esistono versioni diverse modificate con overloading, questa è la più completa. Puoi inizializzare ToolTip sia da codice che da designer e le sue proprietà sono le solite: testo, titolo, forma, colore, icone ecc...

  6. #6
    Originariamente inviato da Il Totem
    Il codice che hai trovato è lunghissimo. E devo contraddire icecube_HT. Il tooltip si può effettivamente far apparire a comando, con una riga d codice:
    codice:
    ToolTip.Show(Testo, Me, X, Y, Durata)
    Ne esistono versioni diverse modificate con overloading, questa è la più completa. Puoi inizializzare ToolTip sia da codice che da designer e le sue proprietà sono le solite: testo, titolo, forma, colore, icone ecc...
    Grazie per la precisazione, interessante..

    Io sono "ancora" al VB6....
    IceCube_HT (VB6 fan Club)

  7. #7
    Originariamente inviato da icecube_HT
    Grazie per la precisazione, interessante..

    Io sono "ancora" al VB6....
    Ah beh, capita... mentre ci sono alcuni che faticano a staccarsi dal VB6, io non mi ricordo niente del vecchio VB. Non so se sia un bene o un male :master:

  8. #8
    Io ragazzi sto impazzendo anche se Il Totem mi ha aperto una stradina interessante!!!

    Infatti ora ho un paio di problemucci da risolvere...porca miseria!!

  9. #9
    E se magari posti questi problemucci ti possiamo dare una mano...

  10. #10
    ho scritto:
    codice:
    Friend Shared Sub VisualizesInformationError(ByVal control As Control, _
                ByVal caption As String, _
                Optional ByVal title As String = Nothing)
    
            Dim ttError As New ToolTip
            Dim TTPWin As IWin32Window = My.Forms.FormPrincipale
            'Le Coordinate del ToolTip.
            Dim TTPosX As Integer = control.Location.X 
            Dim TTPosY As Integer = control.Location.Y
    
            'Imposta il ToolTip.
            With ttError
                .ToolTipTitle = title
                .IsBalloon = True
                .ToolTipIcon = ToolTipIcon.Error
                .Show(caption, TTPWin, TTPosX, TTPosY, (10 * 1000))
            End With
    End Sub
    Il problema principale è poi che disegna il ToolTip in alto e non sopra l'oggetto passato come argomento (control)!

    Poi mi piacerebbe fare qualcosa che vada bene per tutte le finestre...per cui vorrei trovare il modo di passare il tipo IWin32Window direttamente attraverso l'oggetto Control (cioè venga indicata la finestra in cui è contenuto)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.