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

Composants VCL Delphi Discussion :

Commencer la progression de TProgressBar d'une position bien définie(continuer un téléchargement)


Sujet :

Composants VCL Delphi

  1. #1
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations forums :
    Inscription : Janvier 2013
    Messages : 80
    Points : 49
    Points
    49
    Par défaut Commencer la progression de TProgressBar d'une position bien définie(continuer un téléchargement)
    Salut,je suis entrain de developper un logiciel de téléchargement et je veux savoir s'il y'a une méthode particulière qui sert à démarrer la progression de TProgressBar d'une position définie, par exemple si je stoppe le téléchargement l'état de la barre de progression est fixe (j'arrive à ce réaliser), si je le reprends la progression commence à zéro (à cause de IDHttpWorkbegin & IDHttp work), j'ai essayé plusieurs astuces pour commencer la progression de la position d’arrêt ( c'est le cas dans IDM), mais j'y arrive pas , alors y'a t-il une méthode ou une instruction pour ce faire?

  2. #2
    Fxg
    Fxg est déconnecté
    Membre éclairé
    Homme Profil pro
    ingénieur financier
    Inscrit en
    Septembre 2003
    Messages
    510
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ingénieur financier

    Informations forums :
    Inscription : Septembre 2003
    Messages : 510
    Points : 837
    Points
    837
    Par défaut
    En sauvegardant la propriété position du TProgressBar au moment de l'arrêt du téléchargement. Puis en initialisation la propriété Min avec cette valeur.

    Ou peut être ai-je mal compris la demande

  3. #3
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations forums :
    Inscription : Janvier 2013
    Messages : 80
    Points : 49
    Points
    49
    Par défaut
    Mon code est un peu long donc pour résumer :voici la partie du code qui est censé changer la progression de TProgressBar:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    procedure TForm1.IdHTTPWorkBegin(ASender: TObject; AWorkMode: TWorkMode; AWorkCountMax: Int64);
      begin
      if AWorkMode = wmRead then
      begin
        //progressBar
        ProgressBar1.Max := AWorkCountMax;
        if tel_repri=true then  // cette variable est initialisée à vrai quand je reprends un téléchargement
        ProgressBar1.Min:=progressPos ;
     
      end;
      end;
     
     procedure TForm1.IdHTTPWork(ASender: TObject; AWorkMode: TWorkMode; AWorkCount: Int64);
      begin
      if AWorkMode=wmRead then
      begin
        //progressBar
         ProgressBar1.position:=AWorkCount;
         progressPos:=ProgressBar1.Position;
     
        end;
      end;
    ça n'a pas marché, quelle erreur j'ai commis?

  4. #4
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 671
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 671
    Points : 7 044
    Points
    7 044
    Par défaut
    Et en ajoutant un Application.ProcessMessages; après avoir modifié ta ProgressBar ?

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 874
    Points : 11 363
    Points
    11 363
    Billets dans le blog
    6
    Par défaut
    En cas de reprise, est-ce que AWorkCountMax est diminué du fragment déjà téléchargé ?
    Et est-ce que AWorkCount représente la totalité déjà téléchargée, ou seulement depuis la reprise, voire seulement l'incrément ?

  6. #6
    Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations forums :
    Inscription : Janvier 2013
    Messages : 80
    Points : 49
    Points
    49
    Par défaut
    @Ling j'ai ajouté Application.ProcessMessages; mais ça marche pas toujours.
    @Tourlourou AWorkCount représente la totalité téléchargée seulement depuis la reprise, et si vous ai bien compris je crois que AWorkCountMax a toujours la même valeur quand je fais une reprise, d'ailleurs quand je reprends un téléchargement c'est comme si je commence un nouveau téléchargement en ce qui concerne les valeurs AWorkCountMax et AWorkCount.

  7. #7
    Fxg
    Fxg est déconnecté
    Membre éclairé
    Homme Profil pro
    ingénieur financier
    Inscrit en
    Septembre 2003
    Messages
    510
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ingénieur financier

    Informations forums :
    Inscription : Septembre 2003
    Messages : 510
    Points : 837
    Points
    837
    Par défaut
    Ce ne serait pas plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        ProgressBar1.position:=progressPos ;
    au lieu de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        ProgressBar1.Min:=progressPos ;
    si tu reprend le téléchargement je laisserai la valeur min et max aux mêmes valeurs et je ferais juste bouger la valeur de la porgressBar jusqu'à sa valeur avant l'arrêt.

Discussions similaires

  1. Affichage données de BDD à partir d'une position verticale définie
    Par amaubird dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 10/05/2015, 13h45
  2. [AC-2003] insertion d'une chaine de caractéres dans une position bien definie
    Par afifaNancy dans le forum VBA Access
    Réponses: 4
    Dernier message: 22/06/2012, 08h40
  3. Réponses: 1
    Dernier message: 12/10/2011, 12h25
  4. Réponses: 2
    Dernier message: 15/05/2009, 16h11
  5. Réponses: 3
    Dernier message: 06/08/2007, 15h42

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