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++Builder Discussion :

Comment effacer le contenu d'une scrollbox???


Sujet :

C++Builder

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 16
    Points : 14
    Points
    14
    Par défaut Comment effacer le contenu d'une scrollbox???
    Bonjour, j'ai besoin d'aide pour un scrollbox. En effet, est-ce qu'il existe une fonction ou un moyen d'effacer ce qui se trouve dans la scrollbox??

    Je m'explique.
    Je veux un soft qui m'affiche des images de différentes tailles, mais avec la taille de la scrollbox fixe. Cela fonctionne bien lorsque je sélectionne une image, mais si je sélectionne une deuxième image qui ne possede pas les mêmes dimensions qui la précedante, elle vient simplement s'afficher sur l'autre. Donc je vois ma dernière image sélectionnée en entier et les bout de l'ancienne qui dépassent!

    J'aimerais donc savoir s'il y a un moyen de nettoyer la scrollbox avant chaque affichage??

    Voici un bout de mon code

    Merci d'avance

    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
     
    void __fastcall TForm1::ListBox1Click(TObject *Sender)
    {
           AfficheImage();
    }
     
    void TForm1::AfficheImage()
    {
            int hauteur, longueur;
     
            AnsiString FilePath = AffichePath->Text + "\\" + FileName;
     
            TImage *Image = new TImage(0);
     
            Calcul(&hauteur, &longueur);
     
            Image->Parent = ScrollBox1;
            Image->Height = hauteur;
            Image->Width = longueur;
     
            Image->Stretch =true;
            Image->Picture->LoadFromFile(FilePath);
    }

  2. #2
    Membre habitué
    Avatar de Freeze
    Homme Profil pro
    Inscrit en
    Octobre 2002
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 131
    Points : 162
    Points
    162
    Par défaut
    tu devrais garder le pointeur sur ton image :

    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
    24
    25
    26
    27
    28
     
     
    TImage * Image; --> Dans le .h en private
     
    Image = new TImage(NULL); --> Dans le constructeur
    Image->Parent = ScrollBox1; --> Dans le constructeur
     
    delete Image; --> Dans le destructeur
     
    void __fastcall TForm1::ListBox1Click(TObject *Sender) 
    { 
           AfficheImage(); 
    } 
     
    void TForm1::AfficheImage() 
    { 
            int hauteur, longueur; 
     
            AnsiString FilePath = AffichePath->Text + "\\" + FileName; 
     
            Calcul(&hauteur, &longueur); 
     
            Image->Height = hauteur; 
            Image->Width = longueur; 
     
            Image->Stretch =true; 
            Image->Picture->LoadFromFile(FilePath); 
    }

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 16
    Points : 14
    Points
    14
    Par défaut
    C'est cool, merci bien!

    J'avais pas pensé à placer dans le constructeur!

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

Discussions similaires

  1. Comment effacer le contenu d'une zone de text type date sans error
    Par saidm dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 07/06/2009, 02h51
  2. [Tkinter] Comment effacer le contenu d'une frame?
    Par Dam22 dans le forum Tkinter
    Réponses: 7
    Dernier message: 28/04/2006, 11h36
  3. Effacer le contenu d une zone de liste
    Par nico5151 dans le forum IHM
    Réponses: 23
    Dernier message: 22/06/2005, 15h50
  4. comment effacer le contenu d'une table ttable
    Par naw dans le forum Bases de données
    Réponses: 4
    Dernier message: 07/07/2004, 16h13
  5. Comment effacer un Tick sur une TrackBar ?
    Par ZeImp dans le forum Composants VCL
    Réponses: 2
    Dernier message: 19/08/2003, 21h39

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