Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [VB6] Eseguire una funzione tenendo premuto un bottone (senza rilasciarlo)

    Ciao,
    ho un mio form con un campo testo valorizzato con "1".
    Ho un bottone standard e vorrei che tenendolo premuto il valore del campo di testo incrementasse di 1 fino a quando non lascio il bottone (quindi fino a quando non rilascio il tasto del mouse).

    Ho provato con
    private sub commad1_MouseDown()
    text1 = text1 +1
    end sub

    ma mi incrementa solo una volta mentre io vorrei che tenedo premuto il command1 il contatore funzionasse fino al rilascio del mouse.

    So che è na cretinata ma non riesco a trovare na soluzione

    Grazie in anticipooooo
    Dalla vita altrui attingeva la sua oscura magia...
    Membro del Sacro Ordine degli elfi oscuri di Kand

  2. #2
    mi pare di ricordare che anche in vb6 esistano dei controlli per incrementare/decrementare dei valori tenendo premuto il mouse

  3. #3
    Quote Originariamente inviata da optime Visualizza il messaggio
    mi pare di ricordare che anche in vb6 esistano dei controlli per incrementare/decrementare dei valori tenendo premuto il mouse
    sì, l' UpDown control ... contenuto nei common control se ben ricordo

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    758
    No, no. Gli eventi del controllo UpDown sono generati ad ogni pressione di uno dei due bottoni (cioè ad ogni click).
    Si può usare un Timer da far partire con il MouseDown e fermare con il MouseUp. In questo modo si può controllare anche la velocità con cui il valore della TextBox cambia. Non dimenticare di inserire un DoEvents dopo ogni variazione di valore.

  5. #5
    Quote Originariamente inviata da Grumpy Visualizza il messaggio
    No, no. Gli eventi del controllo UpDown sono generati ad ogni pressione di uno dei due bottoni (cioè ad ogni click).
    Si può usare un Timer da far partire con il MouseDown e fermare con il MouseUp. In questo modo si può controllare anche la velocità con cui il valore della TextBox cambia. Non dimenticare di inserire un DoEvents dopo ogni variazione di valore.
    Grande Grumpy è la stessa cosa che ho fatto io.. solo però non ho inserito il DoEvents... ma a cosa mi serve il DoEvents?
    Grazie mille per le risposte
    Dalla vita altrui attingeva la sua oscura magia...
    Membro del Sacro Ordine degli elfi oscuri di Kand

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    758
    La funzione DoEvents restituisce il controllo al S.O. permettendogli di eseguire altri task.
    In parole povere "lascia il tempo" alla TextBox di visualizzare il nuovo valore.

  7. #7
    Quote Originariamente inviata da Grumpy Visualizza il messaggio
    La funzione DoEvents restituisce il controllo al S.O. permettendogli di eseguire altri task.
    In parole povere "lascia il tempo" alla TextBox di visualizzare il nuovo valore.
    Grazie mille sei stato preziosissimo
    Dalla vita altrui attingeva la sua oscura magia...
    Membro del Sacro Ordine degli elfi oscuri di Kand

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.