Hay varias opciones. Antes comentar que no me ha quedado claro si quieres el asterisco dentro del Edit (a la derecha) o fuera (a la derecha).
Si es dentro, puedes revisar el
componente TEditInsideHelp de mi página.
Bájalo y revisa el código, pero creo que es lo que necesitas:
Código Delphi
[-]
procedure TEditInsideHelp.WMPaint(var Message: TWMPaint);
var
MCanvas: TControlCanvas;
DrawBounds: TRect;
begin
if (Self.Text <> '') or (not Self.FInsideHelpActive) then begin
inherited;
Exit;
end;
inherited;
MCanvas := TControlCanvas.Create;
DrawBounds := ClientRect;
try
MCanvas.Control := Self;
MCanvas.Brush.Color := Self.Color;
MCanvas.Font.Color := Self.FInsideHelpColor;
MCanvas.Font.Name := 'Arial';
MCanvas.Font.Style := MCanvas.Font.Style + [fsBold];
MCanvas.TextOut(2,2, Self.FInsideHelpText);
finally
MCanvas.Free;
end;
end;
En este caso se pinta lo que hay en una propiedad, pero es fácil modificar para que pinte un asterisco rojo a la derecha.
Si lo que quieres es pintarlo fuera del edit (a la derecha), pues puedes derivar como te han dicho, o incluso utilizar Frames, aunque creo que la primera opción es mejor.
Si me apuras puedes crear un componentes nuevo derivado de TPanel, que contenga un Edit y un Label.