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

 Delphi Discussion :

Vitesse de déroulement


Sujet :

Delphi

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    483
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 483
    Points : 128
    Points
    128
    Par défaut Vitesse de déroulement
    Salut tous et merci d’avance.
    Voila un autre petit problème que je rencontre
    J’ai un bouton et sur l'élément onclic je redimensionne un groupeBox

    mais je voudrais un éffet de fondu !
    mais l'action est trop rapide. il y a t'il un moyen ,avec peut étre un timer de ralentir la redimention de mon groupBox?
    merci d'avance

  2. #2
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    soit un timer, soit des sleep :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    for i := TailleActuelle to TailleFinale do
    begin
      Groupbox1.height := i;
      application.processMessages;
      sleep(20);
    end;

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    483
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 483
    Points : 128
    Points
    128
    Par défaut erreur
    Citation Envoyé par guillemouze Voir le message
    soit un timer, soit des sleep :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    for i := TailleActuelle to TailleFinale do
    begin
      Groupbox1.height := i;
      application.processMessages;
      sleep(20);
    end;
    j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.Image2Click(Sender: TObject);
    for i:= 120 to 20 do
    begin
      Groupbox1.height := i;
      application.processMessages;
      sleep(20);
    end;
    mais j'ai une érreur

  4. #4
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    for i:= 120 downto 20 do
    mais j'ai une érreur
    c'est bien gentil mais si tu nous dit pas quelle erreur et a quelle ligne, ca va pas nous avancer

    PS : tu n'es pas obliger d'avancer 1 pixel par 1, tu peux faire :
    for i:= 30 downto 5 do
    ...
    Groupbox1.height := 4*i;
    ...

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    483
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 483
    Points : 128
    Points
    128
    Par défaut mon erreur
    Citation Envoyé par guillemouze Voir le message
    for i:= 120 downto 20 do

    c'est bien gentil mais si tu nous dit pas quelle erreur et a quelle ligne, ca va pas nous avancer

    PS : tu n'es pas obliger d'avancer 1 pixel par 1, tu peux faire :
    for i:= 30 downto 5 do
    ...
    Groupbox1.height := 4*i;
    ...
    excuse oui je te donne l'erreur
    Déclaration attendu(e) mais 'FOR' trouvé(e)
    Identification non déclaré:'i'

  6. #6
    Membre confirmé
    Avatar de JP.NUAGE
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 81
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 769
    Points : 542
    Points
    542
    Par défaut
    Si tu as une erreur sur la ligne contenant le FOR, c'est que en prinipe, le code avant le FOR est erroné. Soit un point virgule qui manque ou un end;

    Regarde déjà de ce côté., mais peut être que le fait d'écrire

    crée déjà l'erreur et que Delphi balance la ligne FOR. Je n'ai pas testé.
    Ce qui se conçoit bien s'énonce clairement
    Et les mots pour le dire viennent aisément (Boileau)

  7. #7
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 674
    Points : 5 259
    Points
    5 259
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    procedure TForm1.Image2Click(Sender: TObject);
    for i:= 120 to 20 do
    begin
      Groupbox1.height := i;
      application.processMessages;
      sleep(20);
    end;
    Tu n'as pas déclaré ta variable i !
    Tu essaie d'aller de 120 à 20 en ajoutant 1 à i !
    Ta procédure n'as pas de begin et de end;

    Essaie ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    procedure TForm1.Image2Click(Sender: TObject);
    var : i : integer;
    begin
    for i:= 120 downto 20 do
    begin
      Groupbox1.height := i;
      application.processMessages;
      sleep(20);
    end;
    end;

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    483
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 483
    Points : 128
    Points
    128
    Par défaut Grand merci
    Citation Envoyé par popo Voir le message
    Tu n'as pas déclaré ta variable i !
    Tu essaie d'aller de 120 à 20 en ajoutant 1 à i !
    Ta procédure n'as pas de begin et de end;

    Essaie ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    procedure TForm1.Image2Click(Sender: TObject);
    var : i : integer;
    begin
    for i:= 120 downto 20 do
    begin
      Groupbox1.height := i;
      application.processMessages;
      sleep(20);
    end;
    end;
    Super un grand merci sa marche super

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JScrollPane] Gérer la vitesse de déroulement
    Par GroRelou dans le forum Composants
    Réponses: 9
    Dernier message: 21/10/2005, 10h27
  2. [SAX] Vitesse contre place en mémoire
    Par Dinaïz dans le forum Format d'échange (XML, JSON...)
    Réponses: 6
    Dernier message: 15/10/2004, 13h37
  3. Comment repérer la vitesse du processeur?
    Par Paradam dans le forum Assembleur
    Réponses: 14
    Dernier message: 28/06/2003, 10h43
  4. Vitesse de compilation
    Par srvremi dans le forum C++Builder
    Réponses: 5
    Dernier message: 30/07/2002, 16h49
  5. Vitesse de la mémoire vidéo
    Par Anonymous dans le forum x86 16-bits
    Réponses: 3
    Dernier message: 06/06/2002, 20h20

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