Да в принципе, доп. компоненты необязательны...
Можно и так нарисовать картинку в Edit'е.
Код:
procedure DrawToEdit;
var
DC: HDC;
bmp: TBitmap;
begin
DC := GetDC(Form1.Edit1.Handle);
bmp := TBitmap.Create;
try
bmp.Height := 32;
bmp.Width := 32;
DrawIcon(Bmp.Canvas.Handle, 0, 0, Application.Icon.Handle);
StretchBlt(DC, Form1.Edit1.ClientWidth - Form1.Edit1.ClientHeight, 0,
Form1.Edit1.ClientHeight, Form1.Edit1.ClientHeight, Bmp.Canvas.Handle,
0, 0, bmp.Width, bmp.Height, SRCCOPY);
finally
bmp.Free;
ReleaseDC(Form1.Edit1.Handle, DC);
end;
end;
Только придется перерисовывать картинку при каждом «существенном» для Edit'а событии:
Код:
procedure TForm1.Edit1Change(Sender: TObject);
begin
DrawToEdit();
end;
procedure TForm1.Edit1Click(Sender: TObject);
begin
DrawToEdit();
end;