Windows Form

giovedì 03 gennaio 2008 - 16.09

alan80 Profilo | Newbie

Ciao a tutti.
Vorrei realizzare una form di attesa (magari con una progress bar) che viene attivata nello spazio tra la chiusura e l'apertura di una nuova form.
Io ho un menu in una form, e ho dei bottoni che aprono altre form!

Qualcuno può darmi un idea....?? Thread????

Ciao e buon anno a tutti!!!!!

phomea Profilo | Newbie

Ciao

potresti crearti un form (es. formattesa) con dentro solamente una progressbar

il formattesa magari puoi metterlo topmost e centrato e strutturarlo così in modo che alla sua creazione richieda il valore massimo e lo step della progressbar



Sub New(ByVal valore_totale As Integer, ByVal valore_step As Integer)

' Chiamata richiesta da Progettazione Windows Form.
InitializeComponent()
ProgressBar1.Maximum = valore_totale
ProgressBar1.Step = valore_step
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().

End Sub


poi sempre nel formattesa ci metti una funzione per far avanzare la progressbar e controllare che sia arrivata alla fine

Public Sub avanza()
ProgressBar1.PerformStep()
If ProgressBar1.Value = ProgressBar1.Maximum Then
Me.Close()
End If
End Sub


ok...e questo potrebbe essere l formattesa....
poi poniamo hai un form1 e un form2...dal form1 richiami il form2

nel load del form2 ci metti una cosa del genere:


Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim f As New Formattesa(totale,step)
f.Show()

esegui le tue azioni e richiami f.avanza()...che da sola quando sarà giunta al valore finale chiuderà formattesa

End Sub

nel form1 poniamo di richiamare form2 da un pulsante

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Opacity = 0 ' metto questo =0 per nascondere il form finchè non è stato caricato form2
Form2.Show()
Me.Close() 'dopodichè lo chiudo
End Sub


Visto che hai più pulsanti che aprono più form...nel load di ogni form che verrà aperto fai richiamare formattesa impostando le giuste variabili

Spero ti possa essere di aiuto...questo è quel che mi è venuto in mente al momento...eh eh
ciao
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5