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 :

Image sur une form.


Sujet :

C++Builder

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    80
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 80
    Par d�faut Image sur une form.
    Bonjour a tous,

    voila ma question: comment faire pour afficher une image sur une form,
    et quels formats d'image je peux utiliser (le plus simplement), avec C++-Builder4.

    J'ai lu sur le site que les formats .jpg et .bmp etaient les plus courants...

    Merci d'avance.

  2. #2
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    80
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 80
    Par d�faut
    ...une autre question: est-ce que je peux inclure l'image au projet,
    ou est-ce que je suis obliger de l'importer?

  3. #3
    Membre averti
    Inscrit en
    Mai 2005
    Messages
    34
    D�tails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 34
    Par d�faut
    bonjour � tous
    bon Mr Arthur59 c tr�s simple d'afficher une image dans une forme .
    Avant tous il faut poser le composant d�dier au affichage des image c TImage
    qui se trouve dans anglet Supl�ment, apr�s t'a deux fa�ons d'afficher l'image:
    1- dans l'inspecteur d'objet de TImage tu trouve la propri�t� Picture = vide tu clique sur les 3 point accot� puis charger et tu n'avigue pour chercher ton image.
    2- l� tu le fait � l'execution de ton projet alors
    tu place un OpenPictureDialog1 (dans l'anglet dialogue) et dans boutton dans ta form tu �crit :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    if (OpenPictureDialog1->Execute())
    {
    Image1->Picture->LoadFromFile( OpenPictureDialog1->FileName) ; 
    }
    Image1 est le nom de l'objet TImage .bon tu trouve boucoup de chose dans l'aide du builder
    c tous .

  4. #4
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    80
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 80
    Par d�faut
    OK, merci pour cette reponse, je vais tester ca...
    Le format de l'image n'a pas d'importance?

  5. #5
    Membre averti
    Inscrit en
    Mai 2005
    Messages
    34
    D�tails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 34
    Par d�faut
    bon tu c si tu fait une recherche sur le net tu trouvera beaucoup de def sur la definition des formats d'images.
    jpg est compr�ss�e que bmp c dans la capasit� , donc �a influe sur le temps d'�x�cution de ton programme dans le chargement.

  6. #6
    Membre �m�rite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    F�vrier 2006
    Messages
    916
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 916
    Par d�faut
    Le Timage est fait � la base pour supporter un BMP. Il est toutefois possible de charger un jpeg.

    Si cette image doit �tre en fond de ta Form d�s son ouverture et tout le temps, c'est dommage d'utiliser un OpenDialog pour que l'utilisateur charger lui m�me cette image. Il est possible de charger une image en ressource de ton application, c'est le tips 58 des trucs est astuces.
    Si tu d�butes tu peux aller y jeter un oeil, pas mal de sujets y sont d�velopp�s.

    Beaucoup de composants, de m�thode et de r�solutions d'anciens probl�mes (suites aux questions du forum) figurent aussi dans la FAQ.

    Pour toi, tout d�pend de ce que tu recherches, veux tu un BMP ou un JPG ou ca n'a pas d'importance?
    Le BMP est le format le plus standard et facile � charger, mais p�se lourd. Le JPG demandera un peu plus de code, et sera plus l�ger. Dans tous les cas la solution est simple puisque le code te sera donn�:
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
         TJPEGImage *jp = new TJPEGImage();
         Graphics::TBitmap *Bitmap = new Graphics::TBitmap;
     
         if(OpenDialog1->Execute())
         {
           Image1->Picture = NULL;
           Image1->Height  = 401;
           Image1->Width   = 401;
     
           if(ExtractFileExt(OpenDialog1->FileName).LowerCase() == ".jpeg" || ExtractFileExt(OpenDialog1->FileName).LowerCase() == ".jpg")
           {
              jp->LoadFromFile(OpenDialog1->FileName);
              Bitmap->Height = jp->Height;
              Bitmap->Width  = jp->Width;
              Dimensions.x   = jp->Width;
              Dimensions.y   = jp->Height;
     
              if(jp->Height <= Image1->Height && jp->Width <= Image1->Width)
              {//chargerment de l'image taille normale
                  Image1->Width = jp->Width;
                  Image1->Height= jp->Height;
                  Image1->Canvas->Draw(0,0,jp);
                  Image1->Stretch = false;
              }
              else if(jp->Height >= jp->Width)
              {//chargement de l'image redimensionné en gardant les proportions
               //aligné sur sa hauteur
                  Image1->Width = (float)jp->Width/(float)jp->Height*Image1->Height;
                  Bitmap->Canvas->Draw(0,0,jp);
                  Image1->Picture->Bitmap->Assign(Bitmap);
                  Image1->Stretch = true;
              }
              else
              {//chargement de l'image redimensionné en gardant les proportions
               //aligné sur sa largeur
                  Image1->Height= (float)jp->Height/(float)jp->Width*Image1->Width;
                  Bitmap->Canvas->Draw(0,0,jp);
                  Image1->Picture->Bitmap->Assign(Bitmap);
                  Image1->Stretch = true;
              }
           }
           else
           {
              Image1->Picture->LoadFromFile(OpenDialog1->FileName);
           }
           Buffer->Assign(Image1->Picture);
         }
         delete jp;
         delete Bitmap;
    Voici un exemple pour charger depuis un Dialog un bmp ou jpg.

  7. #7
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    80
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 80
    Par d�faut
    Merci bandit boy pour ces precieux renseignements.

    Je pencherais plutot pour un .bmp inclus en ressource de l'application.
    Je test ca des demain et je te tiens au courant...

  8. #8
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    80
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 80
    Par d�faut
    ...voila, le tips 58 est exactement ce que je recherchais: un .bmp inclus dans les ressources.
    (Je garde en reserve ton code pour une utilisation ulterieure)
    Ca marche nickel; merci encore.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Creation d'une Image sur un form
    Par Hlama dans le forum C#
    R�ponses: 2
    Dernier message: 28/11/2012, 18h22
  2. R�ponses: 1
    Dernier message: 07/07/2009, 11h09
  3. [d�butant] probl�me d'image sur une form
    Par Anthony17 dans le forum Delphi
    R�ponses: 3
    Dernier message: 21/11/2006, 14h49
  4. comment Positionner une image sur une autre ?
    Par moumoule17 dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 3
    Dernier message: 25/11/2004, 16h41

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