На главную
Подписка
Новости


Рейтинг@Mail.ru











Главная / DELPHI / Часто задаваемые вопросы и ответы на них / Компоненты / Выравнивание колонок StringGrid Сделать домашней страницей Добавить в избранное Написать писмо

Выравнивание колонок StringGrid


Автор: Kurt

Два программиста едут в переполненном автобусе. Один - другому:
- Что то у меня с писюком! (толпа замирает)
- А что с ним?
- Да висит часто...
- Может вирус какой?
- Да проверял, все стерильно...
- А висит хорошо?
- Крепко, тремя пальцами не поможешь...

Организуйте обработчик события сетки OnDrawCell. Создайте код обработчика подобный этому:


procedure TForm1.StringGrid1DrawCell(Sender: TObject; Col, Row: Longint;
  Rect: TRect; State: TGridDrawState);
var
  Txt: array[0..255] of Char;
begin
  StrPCopy(Txt, StringGrid1.Cells[Col, Row]);
  SetTextAlign(StringGrid1.Canvas.Handle,
    GetTextAlign(StringGrid1.Canvas.Handle)
    and not (TA_LEFT or TA_CENTER) or TA_RIGHT);
  ExtTextOut(StringGrid1.Canvas.Handle, Rect.Right - 2, Rect.Top + 2,
    ETO_CLIPPED or ETO_OPAQUE, @Rect, Txt, StrLen(Txt), nil);
end;

Поэкспериментируйте с кодом и посмотрите на результаты, прежде чем решить как вам больше нравится.

Успехов.


Copyright ©   "DELPHI WORLD"   E-mail:   delphiworld@mail.ru  http://www.delphiworld.narod.ru
Источник получения информации: http://www.delphiworld.narod.ru
Hosted by uCoz