Visualizzare "Progress Bar in movimento" durante operazioni lunghe

lunedì 16 aprile 2007 - 09.32

bujia Profilo | Newbie

Ciao!

Utilizzo Visual C++ .NET 2003, Windows XP Professional.
Vi espongo il mio problema:

-> in un Form alla pressione di un "Button" chiamo un metodo di una classe di cui non ho il controllo, che compie parecchie operazioni, nella quale l'utente deve restare in attesa. Quindi vorrei visualizzare nel Form qualcosa che si muove, tipo una progress bar che avanza e ritorna indietro per dare l'idea all'utente che l'applicazione sia ancora "viva". Spero di essermi spiegato...

Qualcuno mi può suggerire come fare? Oppure eventuali soluzioni alternative (premetto che mettere la classica clessidra di windows e basta non mi piace come soluzione...)

Grazie mille!



Alessandro

munissor Profilo | Senior Member

Usa il multithreading. Sul thread principale gestisci l'interfaccia grafica, su quello/i in background gestisci le operazioni da eseguire. Attenzione però che ci sono nuovi problemi che sorgono:

1) un handle di finestra è valido solo per il thread che l'ha creato
2) l'utente può lanciare + operazioni contemporaneamente visto che l'UI non è più bloccata.

Ciao!

alextyx Profilo | Expert

Forse questo controllino può fare al caso tuo:

http://www.windowsforms.net/ControlGallery/ControlDetail.aspx?Control=624&tabindex=5
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5