Insérer une image dans une cellule d'un DrawGrid

Résolu
kanuxxx Messages postés 11 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 3 septembre 2005 - 15 janv. 2005 à 16:19
kanuxxx Messages postés 11 Date d'inscription lundi 8 novembre 2004 Statut Membre 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 !

5 réponses

kanuxxx Messages postés 11 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 3 septembre 2005
16 janv. 2005 à 20:55
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
3
DRJEROME Messages postés 436 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 5 février 2015
16 janv. 2005 à 11:00
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
0
DRJEROME Messages postés 436 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 5 février 2015
16 janv. 2005 à 11:49
à la place du "end." tu mets "end;"

DrJerome
0
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
16 janv. 2005 à 13:13
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
FleX2009 Messages postés 22 Date d'inscription mercredi 15 décembre 2004 Statut Membre Dernière intervention 5 mai 2005
16 janv. 2005 à 18:33
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...
0
Rejoignez-nous