Как программно указать ориентацию текста в области таблицы? (Например, вертикально - 90 градусов)

Область = ТабДок.Область(“R4C10”);
Область.Текст(“Вертикальный текст”);
Область.ОриентацияТекста(90);
Этот метод верен в том случае, если таблица еще не выведена на форму. Если нужно обновить форму при интерактивном вводе, используйте метод таблицы ТолькоПросмотр(1) и затем для обновления таблицы (чтобы не перерисовывать) метод Показать(,,1) (с единицей в 3-м параметре).
В моем примере для того, чтобы пользователь визуально видел, какие ячейки он уже отредактировал, эти ячейки меняют шрифт на курсив. Я добавил и ориентацию текста, чтоб наверняка было заметно.
Замечу, что “вращение” идет против часовой стрелки. Так, с параметром 90 градусов текст выведется снизу вверх, 180 градусов – справа налево вверх тормашками, 270 градусов – снизу вверх и т.д.
Выравнивание всегда происходит относительно “стандартного” расположения текста.
Процедура ОбработкаЯчейкиТаблицы(сзРасшифровка, Фл, Таб, Адрес)
Если ТипЗначенияСтр(сзРасшифровка) = “Справочник” Тогда
Фл=1; // стандартный обработчик
Иначе
// мой обработчик
Если ВвестиЧисло(Цена,“Введите цену”,12,4)=0 Тогда
Возврат;
Иначе
Таб.Область(Адрес).Текст=?(Цена=0,”“,Формат(чЦена,“Ч12.4”));
сзРасшифровка.Установить(“Цена”,чЦена);
Таб.Область(Адрес).Расшифровка(сзРасшифровка);
Таб.Область(Адрес).Полужирный(0);
Таб.Область(Адрес).Курсив(1);
Таб.Область(Адрес).ОриентацияТекста(90); /

Таб.ТолькоПросмотр(1);
Таб.Показать(,,1);
ИначеЕсли ТипЗначенияСтр(сзРасшифровка) = “Документ” Тогда
ОткрытьФорму(сзРасшифровка,,1);
КонецЕсли;
КонецПроцедуры

| опубликовано: 10 Сентябрь 2009, 19:54

Комментирование этой статьи закрыто