Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.09.2016, 21:25   #1
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию обеднение ячеек StringGrid

пробую так:
Код:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
  var RectV: TRect; // переменная для координат
      BitM:TBitMap;  // бит мап 
      TextY:integer; // начало текста 
begin
if ACol = 0 then // обеденяем ячейки 1 колонки  
if ARow > 0 then // начиная с 1 не фиксированной ячейки 
 begin
  RectV.Top:=0; 
  RectV.Left:=0;
  RectV.Right:=Rect.Right;
  RectV.Bottom:=(Rect.Bottom-Rect.Top)*2;
  BitM:=TBitMap.Create;
  BitM.Width:=Rect.Right;
  BitM.Height:=(Rect.Bottom-Rect.Top)*2;
  with StringGrid1 do
   TextY:=(DefaultRowHeight*2+Canvas.Font.Height)div 2;
  if gdSelected in State  then
   BitM.Canvas.Brush.Color:=clHighlight else
     BitM.Canvas.Brush.Color:=clWindow;
  BitM.Canvas.Font.Assign(StringGrid1.Canvas.Font);
  BitM.canvas.fillrect(BitM.canvas.cliprect);
  BitM.Canvas.TextOut(0,(TextY),StringGrid1.Cells[0,ARow-1]);
  if (ARow mod 2)= 0 then
   Begin
   StringGrid1.Canvas.CopyRect(Classes.Rect(0,Rect.Bottom-RectV.Bottom,Rect.Right,Rect.Bottom),BitM.Canvas,RectV);
   Image1.Canvas.CopyRect(Classes.Rect(0,Rect.Top,Rect.Right,Rect.Top+RectV.Bottom),BitM.Canvas,RectV);
   end
    else
     Begin
      StringGrid1.Canvas.CopyRect(Classes.Rect(0,Rect.Bottom-RectV.Bottom+14,Rect.Right,Rect.Bottom),BitM.Canvas,RectV);
      Image1.Canvas.CopyRect(Classes.Rect(0,Rect.Top+14,Rect.Right,Rect.Top+RectV.Bottom),BitM.Canvas,RectV);
     end;
  BitM.Free;
 end;
end;
как это должно выглядеть?
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
StringGrid Цвет фона пустых ячеек и ячеек с текстом Mapkus Компоненты Delphi 6 07.07.2016 11:34
StringGrid размер ячеек РоРоРоЛоЛоЛо Помощь студентам 5 22.10.2013 21:12
перемножение ячеек в stringgrid Abay19941308 Компоненты Delphi 1 26.09.2013 08:35
выделение ячеек в StringGrid belyjj Компоненты Delphi 9 08.04.2011 15:22