у тебя Canvas должно в процедуру EnterText передаваться извне.
т.е:
Код:
procedure EnterText(Canvas : TCanvas; x,y:integer;s:string);
begin
Canvas.Font.Size := 12;
Canvas.Font.Color := clBlack;
Canvas.TextOut(x,y,s);
end;
Соответсвенно, в вызове указывай тот Canvas, с которым работаешь.
ЗЫ. Если ты работаешь с канвой формы, то можно сделать процедуру без передачи канвы - убираешь указание Canvas, а процедуру делаешь методом формы. в этом случае процедура будет обращаться к канве формы.