Поддержка / Donate
 

WebMoney

Яндекс.Деньги

SMS.Копилка
Деньги@Mail.ru
Rupay
E-gold
PayPal

 

Благодарю за поддержку!

Лента RSS - Новости сайта Новости сайта
Лента RSS - Новости форума Новости форума
Добавить в закладки и поделиться Bookmark and Share

 

Архив исходников

 


Automatic translation

 
English German French
Italian Spanish Portuguese
Greece Japan Chinese
  Korean  

  

 

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Правое выравнивание ячеек TStringGrid

Я полагаю, это лучший метод:


procedure TForm1.GridSumaDrawCell(Sender: TObject; ACol, ARow: Longint;
  ARect: TRect; State: TGridDrawState);
var
  dx: integer;
begin
  with (Sender as TStringGrid).Canvas do
  begin
    Font := GridSuma.Font;
    Pen.Color := clBlack;
    if (ACol = 0) or (ARow = 0) then
    begin
      { Рисуем заголовок }
      Brush.Color := clBtnFace;
      FillRect(ARect);
      TextOut(ARect.Left, ARect.Top, GridSuma.Cells[ACol, ARow])
    end
    else
    begin
      { Рисуем ячейку с правым выравниванием }
      Brush.Color := clWhite;
      FillRect(ARect);
      dx := TextWidth(GridSuma.Cells[ACol, ARow]) + 2;
      TextOut(ARect.Right - dx, ARect.Top, GridSuma.Cells[ACol, ARow])
    end
  end
end;




Источник - Проект "Delphi World" © Выпуск 2002 - 2004
Автор проекта: Акулов Николай



   Rambler's Top100             Яндекс цитирования