Я использую следующий код в CustomCellDraw
событии DBAdvGrid
(TMS) для увеличения высоты строки.
procedure TForm1.DBAdvGrid1CustomCellDraw(Sender: TObject; Canvas: TCanvas;
ACol, ARow: Integer; AState: TGridDrawState; ARect: TRect; Printing: Boolean);
begin
DBAdvGrid1.RowHeights[ARow]:=120;
end;
Как избежать увеличения строки 0, которая является первой строкой в сетке, содержащей имена/заголовки столбцов? - Я бы хотел, чтобы эта строка осталась нетронутой, а все остальные должны быть изменены с помощью приведенного выше кода. В основном он должен игнорировать индекс строки 0 и начинать с индекса строки 1.
if ARow > 0 then DBAdvGrid1.RowHeights[ARow] := 120;
? Но изменение высоты строки от рисования пахнет событием. Разве этот элемент управления не имеет своего рода событиеOnMeasureRowHeight
? - person Victoria   schedule 11.09.2017OnRowSize
,OnRowSizing
,OnEndRowSize
. Использование кода в любом из них не работает. Не могли бы объяснить, почему это проблема с использованием события рисования? А пока почитаю, есть ли более подходящее событие для этого - person t1f   schedule 11.09.2017DefaultRowHeight
иFixedRowHeight
. Один для установки высоты строк, другой для высоты заголовка (так что в конце концов вам может не понадобиться код). Установите их в том порядке, в котором я написал их здесь, и вы должны получить тот же результат. Событие для установки размера строки (или фактически ячейки) -OnCustomCellSize
, но я понятия не имею, как оно запускается. - person Victoria   schedule 11.09.2017