IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Comment créer un formulaire d'attente ?


Sujet :

C#

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 67
    Points : 43
    Points
    43
    Par défaut Comment créer un formulaire d'attente ?
    Bonjour à tous et à toutes.

    - j'ai créé une application Desktop , et en FormLoad d'un formulaire j'ai mis un bout de code qui me remplie des DataGridView et des combobox , mais il est très lent et il reste coincé pendant des dizaines de seconde avant d’apparaître , alors j'ai cherché un peu sur internet de comment créer un formulaire d'attente avec une Image Gif loading , et j'ai trouvé le MultiThreading avec le composant BackGroundWorker , le problème c'est que je veux mettre dans la valeur d’attente le temps du chargement des données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Threading.Thread.Sleep(TempsChargement);
    Comment puis-je le faire et merci d'avance.

  2. #2
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Si le traitement consiste en une boucle i de 0 à n-1 élements, on peut voir l'avancement en créant tout simplement une procédure qui traite un élément.

    Voir cette discussion :http://www.developpez.net/forums/d15...-utiliser-avis
    Prendre la 2ème version du code de SxProgress.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 67
    Points : 43
    Points
    43
    Par défaut
    Merci pour ta réponse "Graffito" en fait sachant que je suis débutant je met tous mon traitement dans le FormLoad ce qui fait figer mon formulaire au démarrage , alors je veux une manière de faire attendre l'utilisateur pendant le temps du chargement des données et merci (y)

  4. #4
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    backgroundworker
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 67
    Points : 43
    Points
    43
    Par défaut
    Je ne sais pas comment l'utiliser pour mettre le temps du chargement de me s données dans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Threading.Thread.Sleep(TempsChargement);
    ??

  6. #6
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    j'avais mal lu
    threading.sleep est inutile dans ton cas
    il faudrait que tu exprimes mieux ce que tu veux faire

    dans le principe d'un chargement long
    on démarre le chargement via le bgw, quand le traitement est terminé un évènement est levé, permettant par exemple de fermer la fenetre d'attente
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 67
    Points : 43
    Points
    43
    Par défaut
    en fait j'ai un formulaire dont je mets tous mon code de remplissage des GridView , Combobox .. etc en FormLoad au chargement du formulaire , et vu le volume des données chargés le formulaire se coince pendant 20 jusqu'à 30 seconde un peu prés , alors ce que je veux c'est au lieu d'attendre face à un Form coincé , je veux faire apparaître un Form d'attente ergonome et en parallèle faire le chargement des données derrière , et une fois le chargement terminé le Form d'attente se ferme et mon formulaire principal s'affiche , j’espère que j'ai bien expliqué et merci d'avance

  8. #8
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    j'avais dis d'utiliser le backgroundworker, qui sert à faire un traitement (comme du chargement de données) sur un autre thread, ne bloquant pas l'interface
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  9. #9
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 67
    Points : 43
    Points
    43
    Par défaut
    le probème c'est que je ne sais pas comment travailler avec , je suis débutant

  10. #10
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    à quoi ca servirait que je t'explique comment ca fonctionne alors qu'il y a des dizaines de tutoriels sur le net qui l'expliquent déjà très bien ?

    => google

    après si tu bloques sur un point n'hésite pas à revenir
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  11. #11
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 67
    Points : 43
    Points
    43
    Par défaut
    en fait comme j'ai expliqué au dessus , j'ai trouver sur internet des exemple avec un temps d’attente définis , mais mon besoin d'avoir un temps d'attente dynamique selon le volume des données , et merci

  12. #12
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    le backgroundworker s'arretera quand tu auras fait tout ce que tu as à faire, pas après un temps défini
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

Discussions similaires

  1. Comment créer un formulaire de recherche?
    Par Bird dans le forum ASP
    Réponses: 35
    Dernier message: 26/04/2009, 22h41
  2. Comment créer un formulaire indépendant
    Par amne26 dans le forum IHM
    Réponses: 3
    Dernier message: 04/11/2008, 21h01
  3. Réponses: 1
    Dernier message: 11/06/2008, 13h30
  4. Comment créer une barre d'attente pendant une requête
    Par darkspoilt dans le forum VBA Access
    Réponses: 8
    Dernier message: 14/08/2007, 09h18
  5. Réponses: 7
    Dernier message: 01/08/2006, 16h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo