Insérer une image dans une cellule d'un DrawGrid [Résolu]

Messages postés
11
Date d'inscription
lundi 8 novembre 2004
Dernière intervention
3 septembre 2005
- - Dernière réponse : kanuxxx
Messages postés
11
Date d'inscription
lundi 8 novembre 2004
Dernière intervention
3 septembre 2005
- 16 janv. 2005 à 20:55
Bonjour,


Je suis en galère depuis plusieurs heures sur un petit problème qui
doit avoir une solution simple - mais introuvable via google


J'essaye de faire afficher une image dans un drawgrid, sur la case
qu'on a cliquer. Je parviens facilement à mettre un texte dans une
StringGrid, mais l'image dans le drawgrid je n'y arrive pas !


Tout ce que j'ai essayé me provoque des erreurs !





Donc si quelqu'un pouvait m'indiquer la marche à suivre, ce serait très sympas





Merci d'avance !
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
11
Date d'inscription
lundi 8 novembre 2004
Dernière intervention
3 septembre 2005
3
Merci
Merci a vous tous, j'ai réussi a résoudre mon problème grâce au forum
developpez.com, je mettrais peut être ma source ici, ca peut toujours
servir aux prochains ;)



Bonne soirée, et bon lundi :x

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 91 internautes nous ont dit merci ce mois-ci

Commenter la réponse de kanuxxx
Messages postés
447
Date d'inscription
jeudi 9 janvier 2003
Dernière intervention
5 février 2015
1
0
Merci
Par exemple pour dessinner dans Cell[1,1] :
__________________________________________

procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
if (ACol=1) and (ARow=1) then
with Sender as TDrawGrid do
begin
Canvas.Draw(rect.Left,rect.Top,image1.Picture.Graphic);
{ou autre code, on peut par exemple charger une image
à partir d'une imagelist}


end.
end;
__________________________________________

DrJerome
Commenter la réponse de DRJEROME
Messages postés
447
Date d'inscription
jeudi 9 janvier 2003
Dernière intervention
5 février 2015
1
0
Merci
à la place du "end." tu mets "end;"

DrJerome
Commenter la réponse de DRJEROME
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Dernière intervention
9 janvier 2013
25
0
Merci
OK, DrJerome, mais cela ne répond pas vraiment à la question de kanuxxx.
Voici un code source spécifiquement réalisé pour cela : utilisation d'un TDrawGrid
Bonne lecture

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
http://www.croix-rouge.fr/index/partner_campagne.html
Commenter la réponse de cs_Delphiprog
Messages postés
22
Date d'inscription
mercredi 15 décembre 2004
Dernière intervention
5 mai 2005
0
Merci
Pour faire exectement ce que tu veux :



procedure TForm1.DrawGrid1MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

var

Ligne, Colonne: Integer;

Le_Rect: TRect;

begin

DrawGrid1.MouseToCell(X, Y, Colonne, Ligne);

Le_Rect := DrawGrid1.CellRect(Colonne, Ligne);

DrawGrid1.Canvas.Draw(Le_Rect.Left,Le_Rect.Top, image1.Picture.Graphic);

end;



Ce code suppose que ton image est placée dans Image1.

Sinon il y a juste un petit problème pour le bouton gauche de la souris, mais on peut y remedier.

Je peux t'expliquer plus en detail pour le bouton gauche ou autre sur MSN (tu peux trouver mon adresse sur le forum 2009...)



En esperant que ça t'aide...
Commenter la réponse de FleX2009

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.