Bonjour,
Je voudrai savoir s'il existe la possibilité d'afficher une image et lorsqu'on clique sur cette image on charge une autre image avec delphi, Merci pour vos réponses
Version imprimable
Bonjour,
Je voudrai savoir s'il existe la possibilité d'afficher une image et lorsqu'on clique sur cette image on charge une autre image avec delphi, Merci pour vos réponses
Bonjour,
vous pouvez utiliser le composant TImage qui est fait pour ça. Si vous souhaitez utiliser des images au format jpeg, pensez à inclure l'unité jpeg dans vos uses.
je connais le composant TImage mais mon souci est je charge une image avec TImage pas de problème mais lors que je clique sur cette image je voudrai que la zone TImage qui était chargée avec l'mage précédente puisse aller charger une nouvelle image et faire disparaitre(ou caché) l'image précédente. Et lorsque je clique de nouveau sur cette zone TImage je puisse retrouver mon état de départ (c.a.d la toute première l'image)
Peut-être que tu pourrais utiliser la méthode LoadFromFile du TPicture en changeant l'image à chaque clic sur l'image. Tu pourrais par exemple utiliser un booléen pour savoir qu'elle image est actuellement chargée et ainsi charger l'autre sur le clic (sans oublier de modifier le booléen pour signifier le changement d'image.
Merci pour ta réponse,
Je vais même oser te demander si tu as des exemples de code éventuellement
pour avoir une idée plus précisément
Et bien avec une variable déclarée globalement
En supposant que dans son état initial MaPremiereImage.bmp est chargée dans l'image par un biais (DFM ou OnCreate). Ainsi quand PingPong est à False ton image affiche MaPremiereImage.bmp et quand PingPong est à True alors c'est MaSecondeImage.bmp qui est affichée.Code:
1
2
3
4
5
6
7
8
9
10
11
12 var PingPong: Boolean = False; // OnClick de l'image begin if not PingPong then Image1.LoadFromFile( 'MaSecondeImage.bmp' ); else Image1.LoadFromFile( 'MaPremiereImage.bmp' ); PingPong := not PingPong; end;
Merci pour l'exemple.
Pour charger le composant TPicture, je n'ai pas trouvé sous delphi 5, mais par contre j'ai un composant DBImage sous l'onglet controleBD est ce identique? . Est ce que le TPicture est livré en standard avec delphi 5?
Euh TPicture est certes le composant qui va vraiment stocker l'image mais le composant qui va l'afficher sur une fiche c'est TImage. Enfin je penses car moi je suis sous Delphi7. Par contre je ne penses pas DBImage parce qu'il est prévu pour fonctionner avec une image qui reviendrait d'une base de donnée et stockée dans un DataSet.
Renseignement
Dans win32, j'ai un composant qui s'appelle ImageList, apparement on peut stocker plusieurs images avec lui. Je pense que c'est un peu équivalent que TPicture sous delphi 7 ? Car je n'ai pas la possibilité de passer sous delphi 7
Non non TImageList est effectivement un composant qui stocke plusieurs images à l'intérieur, sans pour autant se charger de les afficher visuellement. Ce composant est également disponible sous D7. Regardez si dans la palette Supplément vous ne voyez pas le composant TImage, c'est lui qu'il faut déposer sur votre fiche pour afficher une image car, encore une fois, TPicture est un composant non-visuel qui, certes, est le conteneur des images mais ne fait pas l'affichage.
Ok,
Dans supplément effectivement le composant "Image", en résumé si je comprends bien j'utilise ce composant pour afficher soit "ma premiere image" soit "ma deuxième image" en fonction que je clique ou non sur ce composant TImage?
Donc, je n'ai pas bessoin de l'équivalent TPicture pour stocker mes images sous delphi 5 ?
TImage a une propriété Picture de type TPicture ;) Mais c'est pas ça qui nous intéresse car le composant étant bien fait il nous propose déjà des méthodes pour travailler comme le LoadFromFile par exemple. Consulte l'aide de Delphi tu verras que ce sera plus clair.
Ok,
Merci je vais regarder l'aide sous delphi ce composant, je pense que j'ai tout ce qui faut pour m'amuser. Encore merci !
N'oublie pas de cliquer sur :resolu: si ton problème est réglé.