От методов, позволяющих изменять значение ячеек листа рабочей книги
Excel, переходим к изучению других свойств и методов основного объекта
приложения Excel — ячейки. Начнем с простого — с определения и изме-
нения размеров самой ячейки, связанных с размерами строк и столбцов.
Мы определились, что ячейка всегда определяется объектами Range или
Cells. Используя свойства ColumnWidth и RowHeight этих объектов, мы
имеем возможность изменить ширину и высоту ячейки. Очевидно, что эти
изменения повлекут изменения ширины столбца и высоты строки. В каче-
стве примера использования этих свойств рассмотрим процедуры, позво-
ляющие определить и изменить размеры заданной ячейки.
Определение и изменение размера ячейки
procedure TOKBottomDlg5.addresExit(Sender: TObject);
begin
Range:=E.ActiveSheet.Range[addres.Text] ;
ColumnWidth.Text:=FloatToStr(Range.ColumnWidth);
RowHeight.Text:=FloatToStr(Range.RowHeight);
end;
procedure ToKBottomDlg5.ColumnWidthChange(Sender: TObject);
begin
Range.ColumnWidth:=StrToFloat(ColumnWidth.Text);
end;
procedure TOKBottomDlg5.RowHeightChange(Sender: TObject);
begin
Range.RowHeight:=StrToFloat(RowHeight.Text);
end;
Результат выполнения этих процедур приведен на рис. 12.19.
Можно добавить, что если объект Range ассоциируется с областью ячеек, то
действие данных процедур повлечет за собой изменение размеров всех ячеек
этой области. Для изменения размеров строки (строк), столбца (столбцов)
нужно записать новые значения в свойства RowHeight и ColumnWidth объ-
ектов Rows.Item(i:integer) и Columns.Item(i:integer) соответственно. Чтобы
изменить высоту и ширину всех строк и столбцов ячеек, используйте свой-
ства RowHeight и ColumnWidth коллекций строк и столбцов (Rows и
Columns). С учетом этого несколько изменим единственный оператор в
процедурах настройки высоты и ширины ячейки и получим следующий
программный текст.
Рис. 12.19. Изменение размеров ячейки
Изменение ширины и высоты ячейки
procedure TOKBottomDlg5.ColumnWidthChange(Sender: TObject) ;
begin
Columns.Item(col).ColumnWidth:=StrToFloat(ColumnWidth.Text);
end;
procedure TOKBottomDlg5.RowHeightChange(Sender: TObject);
begin
Rows.Item(row).RowHeight:=StrToFloat(RowHeight.Text);
end;
Результаты выполнения этих и рассмотренных ранее процедур будут пол-
ностью идентичными (см. рис. 12.19). Различаются только исходные дан-
ные. В первом случае они определяются адресом ячейки, во втором — но-
мером строки и столбца.
|