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

    [VB6] Interruzione di un loop

    Ciao.
    Ho un lungo loop di un contatore che mi aggiorna (refresh) una label.
    Il problema è che mentre il loop gira (dura un bel pò!) non posso interrompere l'operazione.

    Che comando devo utilizzare?

    Un esempio di quello che mi serve è la ricerca in windows che posso interrompere in qualsiasi momento premendo il tasto 'Interrompi'.

    Ho provato anche io a mettere un button e a dargli il focus durante l'elaborazione ma non mi considera. Addirittura se lancio un'altra finestra dopo non mi ritorna ai contatori finchè non ha finito il loop.


    Nel vecchio Cobol esisteva il comando "Accept" ma in vb?


    Na drittina?

    Grazi emille
    Dalla vita altrui attingeva la sua oscura magia...
    Membro del Sacro Ordine degli elfi oscuri di Kand

  2. #2
    Usa la parola chiave DoEvents per dare spazio anche agli altri eventi della finestra, come in questo esempio:
    codice:
    Private bEnd As Boolean
    
    Private Sub btnStart_Click()
        btnStart.Enabled = False
        
        Dim n As Long
        
        Do Until bEnd
            n = n + 1
            Label1.Caption = n
            
            DoEvents
        Loop
        
        btnStart.Enabled = True
        bEnd = False
    End Sub
    
    Private Sub btnStop_Click()
        bEnd = True
    End Sub
    Chi non cerca trova.

  3. #3
    Grazie tas....
    insieme alla pizza c'hai pure il dessert


    Cià
    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.