AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.11.2005, 12:17   #1  
Prof is offline
Prof
Участник
 
732 / 64 (4) ++++
Регистрация: 18.10.2002
Адрес: Москва
Как сказать форме подогнать свой размер
Проблема элементарная: в процессе работы с формой на ней появляются новые элементы (visible = true). Т.к. при открытии она автоматически подбирает свой размер, при появлении новых элементов они оказываются "за кадром". Хочется заставить ее подобрать размер заново при изменении содержимого.
Старый 25.11.2005, 12:39   #2  
savel is offline
savel
Участник
 
74 / 13 (1) ++
Регистрация: 26.02.2004
Адрес: Санкт-Петербург
Я использую:
element.redraw();
Старый 25.11.2005, 12:45   #3  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Можно поставить свойство дизайна saveSize - No, но тогда она не сможет запамнить свои размеры.

С Уважением,
Георгий
Старый 25.11.2005, 13:21   #4  
Prof is offline
Prof
Участник
 
732 / 64 (4) ++++
Регистрация: 18.10.2002
Адрес: Москва
element.redraw(); не помогает категорически
saveSize = No и так стоит
Старый 25.11.2005, 15:27   #5  
savel is offline
savel
Участник
 
74 / 13 (1) ++
Регистрация: 26.02.2004
Адрес: Санкт-Петербург
Может дело в том, что у дизайна или у другого контейнерного элемента, на котором находятся ваши показываемые/скрываемые поля стоит конкретное задание ширины или высоты?
Опыт показал что если у элементов свойства ширины и высоты стоят в Auto - размер формы изменяется (даже и без redraw).
Старый 25.11.2005, 15:41   #6  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Для диалогов делал -
dialog.formRun().resetSize();

Для формы получается соответственно - element.resetSize();
Старый 25.11.2005, 16:13   #7  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,323 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Посмотрите на форму RContractTable. Там после скрытия/отображения поля типа партнера, в методе updateDesign формы выполняются 2 метода:
PHP код:
    contractPartnerType.visible(ContractType.selection() == RcontractPartnerTypeAll::All && contractType.visible());
    
this.resetSize();
    
this.arrange(); 
resetSize и arrange. Попробуйте element.arrange() - должно по идее получиться
__________________
Возможно сделать все. Вопрос времени
Старый 25.11.2005, 16:13   #8  
Prof is offline
Prof
Участник
 
732 / 64 (4) ++++
Регистрация: 18.10.2002
Адрес: Москва
Цитата:
Может дело в том, что у дизайна или у другого контейнерного элемента, на котором находятся ваши показываемые/скрываемые поля стоит конкретное задание ширины или высоты?
Опыт показал что если у элементов свойства ширины и высоты стоят в Auto - размер формы изменяется (даже и без redraw).
Ну, в нормальных формах свойства ширины и высоты стоят в ColumnWidth и ColumnHeight
В этой именно так
Цитата:
Для формы получается соответственно - element.resetSize();
Соответственно, к сожалению, не получается
Возможно, дело в том, если сравнивать с диалогом, что диалог все-таки сначала формируется а потом выводится. А здесь ситуация такая, что форма уже на экране есть, и при определенных дейтсвиях должны автоматически подогнаться ее размеры.
Старый 25.11.2005, 16:16   #9  
Prof is offline
Prof
Участник
 
732 / 64 (4) ++++
Регистрация: 18.10.2002
Адрес: Москва
Цитата:
resetSize и arrange. Попробуйте element.arrange() - должно по идее получиться
О! То, что надо, спасибо.
Вывод такой: если в аксапте что-то нельзя сделать с помощью методов непонятного назначения, попробуйте различные их комбинации
Старый 25.11.2005, 16:22   #10  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
2Prof
То есть только arrange() или сначала обязательно resetSize() надо?
Старый 25.11.2005, 16:33   #11  
Prof is offline
Prof
Участник
 
732 / 64 (4) ++++
Регистрация: 18.10.2002
Адрес: Москва
именно комбинацию
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Использование семейства InventDimCtrl_Frm_* - 2 DS InventDim на одной форме Pavlo AKA Panok DAX: База знаний и проекты 5 22.12.2008 17:15
Как не выводить заголовки в форме, если нет строк? DreamCreator DAX: Программирование 9 29.05.2008 15:10
Как сохранять размер связанных форм? BlueRose DAX: Программирование 2 15.06.2006 17:06
Неудобство использования аналитик "Цвет" и "Размер" clerk DAX: Функционал 17 23.05.2005 13:08
Как программно изменить размер контрола на открытой форме? SnowMan DAX: Программирование 2 17.03.2004 11:27
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 09:08.