Выравнивание по центру

Обсуждение Stimulsoft Reports.Net
Ответить
garriporter
Сообщения: 12
Зарегистрирован: 09 окт 2018, 08:59

Выравнивание по центру

Сообщение garriporter » 16 май 2019, 12:23

Здравствуйте!
Есть вот такая необходимость:
Блок текста(в нем число, может быть разной длинны, как 1 так и 999999999), в конце блока этого текста есть панель, на которой еще два блока текста, необходимо чтобы эта панель перемещалась вместе с расширением текста.

Как получилось сделать(с указанием на пример из вложения).
1. Берем панель (Panel2).
2. Кладем на нее блок текста(Text1), параметры: Авторширина - Да; Стиль стыковки - Слева.
3. На Panel2 кладем еще одну панель(Panel3), параметры: Стиль стыковки - Слева. Сверху кладем на нее необходимый текст, который должен смещаться в зависимости от длины строки Text1.

Таким образом, при расширении Text1, панель Panel3 так же смещается.
Проблема в том, что такое решение приводит только к расширению вправо.
А мне необходимо чтобы вся эта конструкция выравнивалась по центру Panel1.
Возможно ли это реализовать?
Во вложении пример. Panel1 сделана для наглядности.
Надеюсь описал понятно :)

Заранее спасибо.
Вложения
Report.mrt
(155.17 КБ) 21 скачивание
Aleksey
Сообщения: 1974
Зарегистрирован: 22 апр 2010, 02:57

Re: Выравнивание по центру

Сообщение Aleksey » 20 май 2019, 12:10

Здравствуйте,

Немогли бы скинуть несколько примеров текста и как это должно выглядеть для анализа?

Спасибо.
garriporter
Сообщения: 12
Зарегистрирован: 09 окт 2018, 08:59

Re: Выравнивание по центру

Сообщение garriporter » 20 май 2019, 14:38

Здравствуйте!
На примере из вложения.
Если в объекте Text1 будет 6 цифр, то все это на черном квадрате выглядит относительно ровно (по горизонтали).
Изображение

Если там будет 3 цифры, то получается такое:
Изображение


Необходимо чтобы конструкция описанная в 1 сообщении, оставалась по центру Panel1 независимо от количества символов.
Вложения
Screenshot_1.png
Screenshot_1.png (1.71 КБ) 130 просмотров
garriporter
Сообщения: 12
Зарегистрирован: 09 окт 2018, 08:59

Re: Выравнивание по центру

Сообщение garriporter » 21 май 2019, 08:47

что то сломалась картинка.
вот сравнение
Вложения
Screenshot_1.png
Screenshot_1.png (2.62 КБ) 114 просмотров
Ivan
Сообщения: 609
Зарегистрирован: 10 авг 2006, 01:40

Re: Выравнивание по центру

Сообщение Ivan » 22 май 2019, 10:43

Здравствуйте.

Мы доработали ваш пример.
У панели Panel2 включили свойства "CanGrow" и "CanShrink", и в событии GetTag панели Panel1 написали следующий скрипт:

Код: Выделить всё

StiContainer cont = sender as StiContainer;
StiComponent comp = cont.Components[0];
comp.Left = (cont.Width - comp.Width) / 2f;
Теперь Panel2 центрируется по горизонтали относительно Panel1.
Обращаем внимание, что скрипты работают только в режиме компиляции отчёта.

Спасибо.
Вложения
Report modified.mrt
(8.5 КБ) 5 скачиваний
garriporter
Сообщения: 12
Зарегистрирован: 09 окт 2018, 08:59

Re: Выравнивание по центру

Сообщение garriporter » 22 май 2019, 12:12

Здравствуйте!
Большое спасибо! Это именно то, что нужно.
Aleksey
Сообщения: 1974
Зарегистрирован: 22 апр 2010, 02:57

Re: Выравнивание по центру

Сообщение Aleksey » 22 май 2019, 12:37

Здравствуйте,

Отлично! Дайте знать, если возникнут вопросы.
Ответить