Utiliser un TListBox editable

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
I8: Integer;
begin
if Key = #13 then
begin
I8 := ListBox1.ItemIndex;
ListBox1.Items.Delete(ListBox1.ItemIndex);
ListBox1.Items.Insert(I8, Edit1.Text);
Edit1.Visible := False;
Key := #0;
end;
end;


//click gauche : cacher le TEdit
//click droit : editer l'élément sélectionné du TListBox
procedure TForm1.ListBox1MouseUp(Sender: TObject; Button: TMouseButton;
Sh if t: TSh if tState; X, Y: Integer);
var
I9: Integer;
ColInt: Integer;
LBItemRect: TRect;

begin
if Button = mbLeft then
Edit1.Visible := False
else if (ListBox1.ItemIndex > -1) and (Button=mbRight) then
begin
LBItemRect := ListBox1.ItemRect(ListBox1.ItemIndex);
Edit1.Top := ListBox1.top + LBItemRect.Top + 1;
Edit1.Left := ListBox1.Left + LBItemRect.Left + 1;
Edit1.Width := ListBox1.Width;
Edit1.Text := ListBox1.Items.Strings[ListBox1.ItemIndex];
Edit1.Height := ListBox1.Canvas.TextHeight(Edit1.Text) + 6;
Edit1.Visible := True;
Edit1.SelectAll;
Edit1.SetFocus;
end;
end;
Ajouter un commentaire
Pseudo
Adresse email
Site internet (optionnel)
Votre commentaire
Fiche de l'article
Mise a jour22/03/2004
VisualisationVu 1043 fois
PublicInternaute zz
CategorieDelphi - Trucs et astuces - Objet
Auteur de l'article
SwissDelphiCenter SwissDelphiCenter
connecté le 02/11/2011
329 articles dans la section
Contacter l'auteur