Отображаемое значение можно разместить в ячейке Excel по-разному.
Обычно способ размещения соответствует типу и величине значения ячей-
ки. Для числовых данных текст смещен к правой границе, а для строко-
вых — к левой границе ячейки, но бывают исключения. Исключения из
правил определяются требованиями, предполагающими эффективное ото-
бражение информации для более полного ее восприятия. В таких случаях и
используют свойства ячейки, позволяющие задать режимы горизонтального
и вертикального выравнивания, установить режимы переноса по словам и
автоподбора ширины, а также выбрать угол поворота текста.
Рассмотрим эти свойства. Следующий программный код задает режимы го-
ризонтального и вертикального выравнивания текста по центру. Выравнивание текста в ячейке
const
xlHAlignCenter = -4108;
xlVAlignCenter = -4108;
procedure TOKBottomDlg8.HorizontalAlignmentChange(Sender: TObject);
begin
range.HorizontalAlignment:=xlHAlignCenter;
end;
procedure TOKBottomDlg8.VerticalAlignmentChange(Sender: TObject);
begin
range.VerticalAlignment:=xlVAlignCenter;
end;
На рис. 12.20 представлен результат выравнивания текста по центру ячейки.
Рис. 12.20. Выравнивание текста в ячейке
Если длина текста превосходит ширину ячейки, то это может повлечь за
собой искажения отображения значения ячейки (см. рис. 12.20). Для реше-
ния этой проблемы можно воспользоваться режимом переноса по словам
или режимом автоматического подбора ширины текста по ширине ячейки.
Рассмотрим режим переноса по словам. Он включается, когда свойство
ячейки WrapText установлено в значение True, и отключается, когда свойст-
во WrapText установлено в значение False. Перенос по словам
procedure TOKBottomDlg8.WrapTextClick(Sender: TObject);
begin
Range.WrapText:=WrapText.Checked;
end;
Режим переноса по словам позволяет разместить текст, как показано на
рис. 12.21.
В этом режиме высота ячейки автоматически изменяется в зависимости от
размера текста. Если текст в ячейке выравнивается по ее левой границе, то
можно задать величину отступа, определяемую свойством IndentLevel объек-
та Range. Оператор Range.IndentLevel=2; задает отступ от левой границы
ячейки в два пункта.
Рис. 12.21. Перенос текста по словам Рис. 12.22. Использование автоподбора ширины текста
Когда требуется, не изменяя размер ячейки, записать в нее текст, ширина
которого может превысить ширину ячейки, необходимо воспользоваться
свойством ShrinkToFit. Если установить это свойство в значение True, то
размер шрифта текста будет автоматически устанавливаться так, чтобы текст
по ширине всегда мог вписаться в ячейку (рис. 12.22).
Еще один способ изменения расположения текста в ячейке — его поворот.
Поворот текста, отображающего значение ячейки, определяется свойством
Orientation и может быть задан величиной от -90 до +90 градусов. Поворот текста в ячейке
procedure TOKBottomDlg8.0rientationChange(Sender: TObject);
begin
Range.Orientation:=Orientation.Value;
end;
Результат выполнения представленной выше процедуры Delphi может вы-
глядеть, как показано на рис. 12.23. При программировании поворота текста
нужно учитывать, что шаг угла поворота составляет 1 градус в пределах
от —90 до +90 градусов.
Рис. 12.23. Поворот текста
Если длина текста, размещаемого в ячейке, настолько велика, что он не
может быть размещен там без существенных изменений размеров ячейки, а
по конкретным условиям задачи размеры строк и столбцов изменять нельзя,
Рис. 12.24. Объединение ячеек
то следует использовать режим объединения ячеек. Объединение ячеек осу-
ществляется установкой в значение True свойства MergeCells объекта Range,
ассоциированного с областью ячеек. Объединение ячеек
procedure ToKBottomDlg9.MergeCellsClick(Sender: TObject);
begin
Range.MergeCells:=MergeCells.Checked;
end;
На рис. 12.24 приведен пример объединения группы ячеек с использовани-
ем представленной процедуры. Адрес объединенной ячейки соответствует
адресу левой верхней ячейки области, в которой выполнялось объединение.
Опубликовал Kest
September 29 2009 20:15:28 ·
0 Комментариев ·
13577 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.