Как сделать отступ в Memo?
Falk0ner, вс, 06/07/2008 - 15:34.
С помощью API-функции SendMessage можно задать поля в Memo-компоненте. Если необходимо, например, сделать отступ в 20 пикселей слева то можно это сделать следующим образом:
var Rect: TRect;
begin
SendMessage( Memo1.Handle, EM_GETRECT, 0, LongInt(@Rect));
Rect.Left:= 20;
SendMessage(Memo1.Handle, EM_SETRECT, 0, LongInt(@Rect));
Memo1.Refresh;
end;
begin
SendMessage( Memo1.Handle, EM_GETRECT, 0, LongInt(@Rect));
Rect.Left:= 20;
SendMessage(Memo1.Handle, EM_SETRECT, 0, LongInt(@Rect));
Memo1.Refresh;
end;
действует до первого изменения размеров компонента TMemo, поэтому указанный код необходимо поместить в обработчик OnResize компонента владельца - формы или панели. Приводит к дополнительной перерисовке TMemo при отправке сообщения.
Отправить комментарий