Добрый день, уважаемые!
Замучался уже с этим (DockStyle) свойством у текстов. Не могу взять в толк как оно работает, то ли выстраивает объекты по имени, то ли ещё как.
Пытался переименовать объекты по типа "Text01, Text02... Text20" - не помогло. Всё равно выстраивает их неправильно, не друг за другом, как они шли, а по-другому, т.е. в непонятной последовательности.
Скачайте файл отчёта, который я сделал. Он уже готов, запускать его не нужно, т.к. там нет адаптера данных (я его удалил, т.к. всё равно отчёт "подтягивает" данные из базы Oracle).
Суть не в этом. Попробуйте в этом отчёт, например в GroupFooterBand11 или в любом другом GroupFooterBand'е. Выделите все объекты текст и поставьте DockStyle = Left. Увидите, что они выстроятся неправильно, а сделав тоже самое, в Header'е или MasterData все объекты останутся на местах, т.е. как и должно быть.
Файл отчёта можно скачать здесь.
DockStyle = Left -> Неверное выравнивание объектов.
-
- Сообщения: 264
- Зарегистрирован: 12 ноя 2007, 08:16
DockStyle = Left -> Неверное выравнивание объектов.
Здравствуйте,
Мы разобрались в вашей проблеме. Чтобы понять ее, Вам нужно внимательно посмотреть в дерево отчета, а именно, как расположены компоненты в GroupFooterBand11 и GroupFooterBand12. Докирование компонентов происходит не по тому как они лежат на контейнере, а по порядку их вхождения массив Components.
Посмотрите пожалуйста приложенное изображение.
GroupFooterBand11:
Text271 и Text307 находятся последними в дереве компонентов, а на GroupFooter расположены посередине. Поэтому при "DockStyle = Left" они переносятся в конец.
Спасибо.
Мы разобрались в вашей проблеме. Чтобы понять ее, Вам нужно внимательно посмотреть в дерево отчета, а именно, как расположены компоненты в GroupFooterBand11 и GroupFooterBand12. Докирование компонентов происходит не по тому как они лежат на контейнере, а по порядку их вхождения массив Components.
Посмотрите пожалуйста приложенное изображение.
GroupFooterBand11:
Text271 и Text307 находятся последними в дереве компонентов, а на GroupFooter расположены посередине. Поэтому при "DockStyle = Left" они переносятся в конец.
Спасибо.
- Вложения
-
- Untitled-7.png (14.15 КБ) 2632 просмотра
DockStyle = Left -> Неверное выравнивание объектов.
Да, теперь понял, но вот незадача с помощью Drag'n'Drop не получается никак поменять порядок следования этих компонентов.Anton писал(а):Здравствуйте,
Мы разобрались в вашей проблеме. Чтобы понять ее, Вам нужно внимательно посмотреть в дерево отчета, а именно, как расположены компоненты в GroupFooterBand11 и GroupFooterBand12. Докирование компонентов происходит не по тому как они лежат на контейнере, а по порядку их вхождения массив Components...................
Как быть, пересоздать их все? Но, это неудобно, т.к. я уже прописал кучу кода на разные события для этих компонентов.
-
- Сообщения: 264
- Зарегистрирован: 12 ноя 2007, 08:16
DockStyle = Left -> Неверное выравнивание объектов.
Здравствуйте,
>>Да, теперь понял, но вот незадача с помощью Drag'n'Drop не получается никак поменять порядок следования этих компонентов.
Мы подумаем по поводу этой проблемы, постараемся изменить поведение Drag'n'Drop.
Вы можете просто выделить все компоненты GroupFooterBand11 и переместить на свободное место страницы, а потом заново переместить их на GroupFooter.
Тогда ничего пересоздавать не придется.
Спасибо.
>>Да, теперь понял, но вот незадача с помощью Drag'n'Drop не получается никак поменять порядок следования этих компонентов.
Мы подумаем по поводу этой проблемы, постараемся изменить поведение Drag'n'Drop.
Вы можете просто выделить все компоненты GroupFooterBand11 и переместить на свободное место страницы, а потом заново переместить их на GroupFooter.
Тогда ничего пересоздавать не придется.
Спасибо.
DockStyle = Left -> Неверное выравнивание объектов.
Да, это помогает. :biggrin: Только при перетаскивании с пустого места обратно на GroupFooterBand порядок создания остаётся такой же, как и был.Anton писал(а):Здравствуйте,
>>Да, теперь понял, но вот незадача с помощью Drag'n'Drop не получается никак поменять порядок следования этих компонентов.
Мы подумаем по поводу этой проблемы, постараемся изменить поведение Drag'n'Drop.
Вы можете просто выделить все компоненты GroupFooterBand11 и переместить на свободное место страницы, а потом заново переместить их на GroupFooter.
Тогда ничего пересоздавать не придется.
Приходится перетаскивать компоненты по одному и выставлять значение Top в ноль, а Left в соответствии с тем, что стоит у вышестоящего GroupFooter'а, т.к. они почти одинаковые, только для разных полей.
Это не совсем удобно, т.к. отнимает много времени на пустую работу, но ничего не поделать. Но в будущих релизах хотелось бы увидеть реализацию перетаскивания обычным Drag'n'Drop методом, чтобы при этом менялся порядок создания этих (перетаскиваемых) компонентов.
В любом случае спасибо за помощь, теперь зная, что делать, буду переделывать все 12 Footer'ов.:pffft:
-
- Сообщения: 264
- Зарегистрирован: 12 ноя 2007, 08:16
DockStyle = Left -> Неверное выравнивание объектов.
Здравствуйте,
Спасибо.
Мы внесли изменения в процесс Drag'n'Drop. Изменения будут доступны в следующем пререлиз билде.leon писал(а): Да, это помогает. :biggrin: Только при перетаскивании с пустого места обратно на GroupFooterBand порядок создания остаётся такой же, как и был.
Приходится перетаскивать компоненты по одному и выставлять значение Top в ноль, а Left в соответствии с тем, что стоит у вышестоящего GroupFooter'а, т.к. они почти одинаковые, только для разных полей.
Это не совсем удобно, т.к. отнимает много времени на пустую работу, но ничего не поделать. Но в будущих релизах хотелось бы увидеть реализацию перетаскивания обычным Drag'n'Drop методом, чтобы при этом менялся порядок создания этих (перетаскиваемых) компонентов.
В любом случае спасибо за помощь, теперь зная, что делать, буду переделывать все 12 Footer'ов.:pffft:
Спасибо.