Имя: Пароль:
1C
 
не устанавливается выравнивание по центру в области макета
0 NIGHTHUNTER
 
30.03.21
10:58
Делаю программно центрирование в одной из областей макета. но это не работает.
Решил спросить, может я что то не понимаю. Думал задам и все. Но открывая режим предприятия тем нет такой настройки (((

            ТДВыводПечатиУТ.Область("C1").ГоризонтальноеПоложение = ГоризонтальноеПоложение.Центр;
            ТДВыводПечатиУТ.Область("C1").ВертикальноеПоложение   = ВертикальноеПоложение.Центр;

уже и вертикальное за одно задал. Но результат в первой колонке такой, - http://joxi.ru/krDa79GF4keb3m
1 NIGHTHUNTER
 
30.03.21
10:59
ширину вот задал, сработало

ТДВыводПечатиУТ.Область("C1").ШиринаКолонки           = 4;

но выравнивание не воспринимается, в свойствах ячейки горизонтальное выравнивание стоит авто
2 NIGHTHUNTER
 
30.03.21
11:11
дело в том что никак не могу сделать, как только не пробовал, не пойму в чем дело
3 NIGHTHUNTER
 
30.03.21
11:19
4 Галахад
 
гуру
30.03.21
11:27
Ну, область "С1" это одна ячейка. Там может выравнивание применилось.
5 NIGHTHUNTER
 
30.03.21
11:28
(4)

ТДВыводПечатиУТ.Область("C1").ШиринаКолонки           = 4;

Это применилось для всей колонки
6 NIGHTHUNTER
 
30.03.21
11:29
(4)
      "С1" - это же первый столбец?

А как нужно если макет такой?  http://joxi.ru/bmoyBOniyLJ7nA


    ОбластьШапка                            = Макет.ПолучитьОбласть("Шапка|ОбластьГоризонтальная");
    ОбластьНазванияСтолбцов                 = Макет.ПолучитьОбласть("НазванияСтолбцов|ОбластьГоризонтальная");
    ОбластьСтроки                           = Макет.ПолучитьОбласть("Строки|ОбластьГоризонтальная");
    ОбластьПодвал                           = Макет.ПолучитьОбласть("Подвал|ОбластьГоризонтальная");
    //
    ТДВыводПечатиУТ.Вывести(ОбластьШапка);
    ИндексШапкиТаблицы = 1;
    Для Каждого КолонкаТз Из ТзРез.Колонки Цикл
        Если ИндексШапкиТаблицы = 1 Тогда
            ОбластьНазванияСтолбцов.Параметры.ШапкаСтроки                  = "№ п/п";
            ТДВыводПечатиУТ.Область("C1").ГоризонтальноеПоложение          = ГоризонтальноеПоложение.Центр;
            ТДВыводПечатиУТ.Область("C1").ВертикальноеПоложение            = ВертикальноеПоложение.Центр;
            ТДВыводПечатиУТ.Область("C1").ШиринаКолонки                    = 4;
            ТДВыводПечатиУТ.Вывести(ОбластьНазванияСтолбцов);
            //
            ОбластьНазванияСтолбцов.Параметры.ШапкаСтроки = КолонкаТз.Имя;
            ТДВыводПечатиУТ.Присоединить(ОбластьНазванияСтолбцов);
        Иначе
            ОбластьНазванияСтолбцов.Параметры.ШапкаСтроки = КолонкаТз.Имя;
            ТДВыводПечатиУТ.Присоединить(ОбластьНазванияСтолбцов);
        КонецЕсли;
        ИндексШапкиТаблицы = ИндексШапкиТаблицы + 1;
    КонецЦикла;
    //
    Ном = 1;
    Для Каждого СтрТзРез Из ТзРез Цикл
        ОбластьСтроки.Параметры.ЗначениеСтроки = Ном;
        ТДВыводПечатиУТ.Вывести(ОбластьСтроки);
        Для Каждого КолонкаТз Из ТзРез.Колонки Цикл
            ОбластьСтроки.Параметры.ЗначениеСтроки = СтрТзРез[КолонкаТз.Имя];
            ТДВыводПечатиУТ.Присоединить(ОбластьСтроки);
        КонецЦикла;
        Ном = Ном + 1;
    КонецЦикла;
    //
    ТДВыводПечатиУТ.Вывести(ОбластьПодвал);
КонецПроцедуры
7 Галахад
 
гуру
30.03.21
11:30
(5) Ну, логично. Одно другое не исключает.
8 Галахад
 
гуру
30.03.21
11:32
Точно не помню, но вроде как-то так:

Обл = ТДВыводПечатиУТ.Вывести(ОбластьНазванияСтолбцов);
Обл = ГоризонтальноеПоложение.Центр;
9 NIGHTHUNTER
 
30.03.21
11:38
(7) Понял. Спасибо. Причина была в том что, нужно сначала выводить, а потом уже выравнивать.
Ширину колонки вот можно установить до вывода .
10 Галахад
 
гуру
30.03.21
11:40
(9) Ну, не совсем. Я Х.З. что такое "С1", но думаю она уже выведена.
11 NIGHTHUNTER
 
30.03.21
12:16
(10) Как я понимаю "C1" - это весь первый столбец в выводимом макете!
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший