В таком случае, как мне кажется, писать свой компонент не имеет смысла… В общем случае это можно сделать так
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls;
type
TForm1 = class(TForm)
ListView1: TListView;
procedure FormCreate(Sender: TObject);
procedure ListView1Click(Sender: TObject);
procedure ListView1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Cap: string;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
i: integer;
li: TListItem;
begin
for i := 1 to 9 do
begin
li := ListView1.Items.Add;
li.Caption := IntToStr( i );
end;
end;
procedure TForm1.ListView1Click(Sender: TObject);
begin
if ListView1.SelCount > 0 then
Cap := ListView1.Selected.Caption;
end;
procedure TForm1.ListView1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_RETURN then
if ListView1.Selected.Caption <> Cap then
ListView1.Selected.Caption := 'Мой текст';
end;
end.
Если все же нужен свой компонент, то сделай в нем все аналогично этому примеру.