Bonjour à toutes et à tous,

En cas d'une procédure drag and drop, est t'il possible de pouvoir le faire avec 5 Timage, car la je bloque.

Avec un Timage ceci fonctionne :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
 private
    { Déclarations privées }
 
    _pic: TPicture;
 
     originalPanelWindowProc : TWndMethod;
     procedure PanelWindowProc (var Msg : TMessage) ;
     procedure PanelImageDrop (var Msg : TWMDROPFILES) ;
 
procedure TFormtest2.PanelWindowProc(var Msg: TMessage) ;
begin
   if Msg.Msg = WM_DROPFILES then
     PanelImageDrop(TWMDROPFILES(Msg))
   else
     originalPanelWindowProc(Msg) ;
end; (*PanelWindowProc*)
 
procedure TFormtest2.PanelImageDrop(var Msg: TWMDROPFILES) ;
var
   numFiles : longInt;
   buffer : array[0..MAX_PATH] of char;
begin
   numFiles := DragQueryFile(Msg.Drop, $FFFFFFFF, nil, 0) ;
   if numFiles > 1 then
   begin
     ShowMessage('Vous pouvez déposer un seul fichier image à la fois !') ;
   end
   else
   begin
     DragQueryFile(Msg.Drop, 0, @buffer, sizeof(buffer)) ;
     try
       Image1.Picture.LoadFromFile(buffer) ;
       Image2.Picture.LoadFromFile(buffer) ;
       Image3.Picture.LoadFromFile(buffer) ; 
          except
       on EInvalidGraphic do ShowMessage('Ce format n''est pas supporté !') ;
     end;
   end;
end; (*PanelImageDrop*)
Et dans le on create :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
 originalPanelWindowProc := Panel1.WindowProc;
   Panel1.WindowProc := PanelWindowProc;
 
   DragAcceptFiles(Panel1.Handle,true) ;
 
   originalPanelWindowProc := Panel2.WindowProc;
   Panel2.WindowProc := PanelWindowProc;
 
   DragAcceptFiles(Panel2.Handle,true) ;
 
   originalPanelWindowProc := Panel3.WindowProc;
   Panel3.WindowProc := PanelWindowProc;
 
   DragAcceptFiles(Panel3.Handle,true) ;
Avec les 3 Timage non.

Dois je multiplier mes procédures suivant le nombre d'images ?

Merci de votre attention.

@+,

Cincap