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();![]()
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 = ""
Partager