Bonjour à tous
Est-il possible de récupérer le chemin d'accès d'une image après qu'elle est été chargée dans un composant TImage.
Merci d'avance
Bonjour à tous
Est-il possible de récupérer le chemin d'accès d'une image après qu'elle est été chargée dans un composant TImage.
Merci d'avance
Voilou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 TImage* ii = new TImage; ii->Picture->GetNamePath();
L'informatique, c'est fantastique...
En fait, cela ne marche pas car la fonction GetNamePath() retourne le nom de la classe de l'objet. Ainsi, quand je fais :
dans ma chaine j'ai "TPicture"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 AnsiString Chemin = ii->Picture->GetNamePath();
Salut !
Si celà n'est pas possible avec les composants fournis, on peut le faire par soi-même.
A un niveau très simple et pour indication :
Les méthodes utiles ici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 class TMyImage : public TImage { public : AnsiString Filename; __fastcall TMyImage(TComponent *Owner); __fastcall ~TMyImage(); void __fastcall LoadFromFile(AnsiString F); void __fastcall SaveToFile(AnsiString F); };
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 __fastcall TMyImage::TMyImage(TComponent *Owner) : TImage(Owner) { Filename = ""; }Pour créer un composant (donc à demeure sur une palette), voir le tuto de CGI :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 void __fastcall TMyImage::LoadFromFile(AnsiString F) { if(FileExists(F)) { Picture->LoadFromFile(F); Filename = F; } else { ShowMessage("Fichier image inconnu !"); } }
"Création d'un composant C++ Builder" :
http://chgi.developpez.com/compo1/
A plus !
EDIT : correction d'une petite erreur : Filename = "" au lieu de filename = ""
Merci pour ton aide, je vais regarder ça.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager