Barra di avanzamento Tutorial

May 4

Barra di avanzamento Tutorial


La barra di avanzamento è uno dei controlli più semplici in Visual Basic. Le relazioni della barra sullo stato di alcune operazioni del computer, ad esempio durante l'installazione di un nuovo software o qualche altro processo lungo, come un trasferimento di file di rete. La barra dà all'utente qualche garanzia che il programma non è andato in crash. Il processo è lo stesso sia in Visual Basic 6.0 e Visual Basic 2008 Express Edition anche se il codice in quest'ultimo è leggermente diversa.

Come funziona

Come operazione procede, il codice legge continuamente quanto viene completato e calcola lo stato. Se il valore minimo è impostato su uno e il massimo a 100, la barra riempire metà display bar quando il 50 per cento del completamento dell'operazione. Per eseguire questo calcolo, il programmatore deve sapere per quanto tempo l'operazione avrà. Per fare un esempio, se l'utente sta scaricando un file di cinque MB, per il momento in 2.5 MB hanno scaricato, il bar sarà spostato a metà strada.

Creare una barra di avanzamento

Inizia con la creazione di un nuovo progetto dopo l'apertura di Visual Basic. Fare clic su "File", "New Project" e selezionare l'opzione "formato EXE standard". Aggiungere il controllo ProgressBar cliccando su "Progetto", "Componenti". Trova i Microsoft Windows Common Controls nella lista. Scegli i Microsoft Common Controls Visual Basic (SP6) mettendo un segno di spunta nella casella accanto al controllo. Fare clic su "Applica" e "OK". Si dovrebbe vedere il controllo nella lista nel pannello di sinistra. Fare doppio clic su questo per inserirlo al form.

Impostazione delle proprietà

Se si lavora con una operazione in cui la percentuale di completamento è facile calcolare come un download di file, impostare la proprietà minima nel pannello Proprietà a "1" e il massimo di "100" Un altro modo per impostare il massimo è di avere contare il codice il numero di iterazioni di alcune operazioni, confronta il numero totale, e calcolare dove la barra dovrebbe essere. Height e sinistra controllano l'altezza della barra stessa e quando dall'insieme sinistra dello schermo. Solo due altre proprietà della materia: Se la barra passa attraverso lo schermo in verticale o in orizzontale, e se blocchi incrementali appaiono o il bar è più liscia. Scegliere questi dal "Orientamento" e "Proprietà di scorrimento". Se il massimo non può essere predeterminata, è possibile utilizzare un controllo Animation per mantenere la barra in movimento fino al completamento dell'operazione. Questo miglioramento va oltre il livello di questo tutorial. Dal momento che il bar non dovrebbe apparire fino a che un'operazione abbia inizio, impostare la proprietà Visible su "False". Per questo esempio, impostare la proprietà massima per "10000" e lasciare la minima a "0" Infine, aggiungere un controllo pulsante di comando dalla lista Strumenti per il modulo per avviare un'azione. Modificare la proprietà (Name) per "btnStart" e la didascalia di "Start".

Scrivere il codice

Fare clic su "Visualizza", "Codice" per aprire la finestra di programmazione. Digitare le righe seguenti esattamente come indicato. Le prime tre linee di carico la forma e rendere la barra di avanzamento visibile. Il resto del codice attraversa una sequenza ripetitiva di dimostrare la barra. Il numero fine a questo codice è impostato molto alto per rallentare la barra di avanzamento verso il basso per la visibilità. Sostituire i passaggi della seconda sezione che iniziano con "Private Sub btnStart_Click () e termina" End Sub "con qualunque evento che tempismo per ottenere un nuovo ProgressBar1.Value. Aggiungere sempre un comando per modificare la visibilità della barra di" False " Al termine di routine.

Private Sub Form_Load ()
ProgressBar1.Visible = True
End Sub

Private Sub btnStart_Click ()
Dim n As Integer
Per n = 1 a 10000
ProgressBar1.Value = n
Successivo n
End Sub

Testare il codice premendo il tasto "F5".

Visual Basic 2008 Express Edition Version

In Visual Basic 2008, sostituire le seguenti righe per le linee che iniziano Private Sub:

Private Sub Form1_Load (ByVal eventSender come System.Object, ByVal eventArgs come System.EventArgs) tratta MyBase.Load
Private Sub btnStart_Click (ByVal eventSender come System.Object, ByVal eventArgs come System.EventArgs) tratta btnStart.Click