Bonjour,
en fait j'ai plusieur tableau, tab_image et tab_param qui me servent a stocker des timage et des strings, lors de la création d'une image j'utilise la fonction suivante :
Par la suite la procedure qui utilise cette fonction pour par exemple rajouter l'image d'un pc est :
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 function CreerImage(name_img : string; position_left : integer = 0): integer; var i : integer; begin try for i := 0 to length(tab_image)-1 do begin if(tab_image[i].left = position_left) then position_left := position_left + tab_image[i].Width; end; finally SetLength(tab_image,length(tab_image)+1); tab_image[length(tab_image)-1] := TImage.Create(Form1); with tab_image[length(tab_image)-1] do begin Parent := Form1; Name := 'image' + IntToStr(length(tab_image)); picture.LoadFromFile('C:\Documents and Settings\Administrateur\Bureau\projet\bmp\'+ name_img + '.bmp'); Visible := true; Left := position_left; AutoSize := true; OnDragOver := Form1.ImageDragOver; OnMouseDown := Form1.ImageMouseDown; OnEndDrag := Form1.ImageEndDrag; PopupMenu := Form1.PopupMenu1; end; result := length(tab_image)-1; end; end;
lorsque je selectionne un item de la listbox1, je voudrais que l'image créé précedemment (fond blanc) se change en une autre image (fond jaune) et qu'elle fasse l'opération inverse lorsque je la déselectionne.
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 procedure TForm1.PC1Click(Sender: TObject); var tmp : string; res : boolean; begin res := true; while (tmp = '') and (res) do begin res := InputQuery('Nom du pc','PC',tmp); end; if (res) then if CleanForm() = mrok then begin ListBox1.Items.Add('PC ('+tmp+')'); SetLength(tab_param,length(tab_param)+1); with form2 do tab_param[CreerImage('pc')] := CreerParam(Edit1.text, edit2.text,edit3.text,edit4.text,edit5.text,edit6.text,edit7.text,edit8.text,edit9.text,edit10.text,RadioButton7.Checked,RadioButton6.Checked,RadioButton2.Checked,RadioButton4.Checked,RadioButton1.Checked,RadioButton5.Checked,RadioButton3.Checked,RadioButton8.Checked,RadioButton10.Checked,RadioButton9.Checked,RadioButton12.Checked,RadioButton11.Checked); StatusBar1.Panels.Items[0].Text := tab[8]; end; end;
Pour les photos a fond jaune la syntaxe est de ce type :
mais je ne sais pas dans quel évènement placer ça et la manière dont formuler le code :s, des idées?
Code : Sélectionner tout - Visualiser dans une fenêtre à part picture.LoadFromFile('C:\Documents and Settings\Administrateur\Bureau\projet\bmp\'+ name_img + '_selected.bmp');
Partager