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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.12.2006, 15:35   #1  
3oppo is offline
3oppo
Участник
Аватар для 3oppo
 
222 / 32 (2) +++
Регистрация: 30.06.2005
Разница между пустой Группой на форме, и группой в которую включён элемент
Динамически создаю чекбоксы в группе GroupCheckBox, вот таким образом:


PHP код:
        FormGroupControl=   form.design().controlName"GroupCheckBox" );

        for (
i=1i<= conlen(m_con_xSysLastValue) ; i++)
        {
            
fieldId =   conPeekm_con_xSysLastValue,);

            
sTest   =   dt.fieldNamefieldId );
            
sTest2  =   int2strfieldId );
            
sTest3  =   fieldid2pname(tablenum(EmplTable),fieldId );

            
fControl        =   FormGroupControl.addControlFormControlType::CheckBox,"CheckBox" int2str) );

            
fControl.userPromptTextsTest3 );
            
fControl.visibletrue );
        }
        
FormGroupControl.visibletrue );
        
FormGroupControl.update();
        
form.activate(true); 

Но они почему то не отображаются!! Беру и в дизайнере добавляю один чекбокс, и о чудо всё замечательно работает!!! Подскажите кто знает в чём разница между пустой Группой на форме, и группой в которую включён элементе!?
Старый 25.12.2006, 16:02   #2  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Помню когда-то натыкался на такое - разница в том, что группа пустая при инициализации формы делается невидимой, если она пустая. Соответственно, вы то контролы добавили, но их не видно, потому что и группы не видно.
А когда один добавили, то сразу все ок.
Вроде так
Старый 25.12.2006, 16:23   #3  
Dron AKA andy is offline
Dron AKA andy
Moderator
 
944 / 253 (10) ++++++
Регистрация: 27.03.2002
Адрес: Москва
form.design().controlName() - это у вас что-то странное написано, у FormBuildDesign такого метода нет. Скорее всего, у вас все же formRun.design().controlName(), т.е. все делается уже после инициализации формы (после super() на init() формы), когда группа уже была идентифицирована как пустая. А вот если делать операцию добавления чекбоксов до super() в init() формы, оперируя как раз FormBuildDesign, FormBuildGroupControl и т.д., то все должно сработать нормально.
__________________
Андрей.
Старый 25.12.2006, 17:00   #4  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Установите для этой группы в дизайне свойство HideIfEmpty=FALSE. После создания контролов вызовите form.design().resetUserSetting(). Перед создание контролов вызовите FormGroupControl.lock(), а после - FormGroupControl.unLock(false) - что бы не моргала форма при добавлении
И еще - неплохо бы fControl.label() устанавливать
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: 3oppo (1).
Старый 26.12.2006, 05:17   #5  
3oppo is offline
3oppo
Участник
Аватар для 3oppo
 
222 / 32 (2) +++
Регистрация: 30.06.2005
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Соответственно, вы то контролы добавили, но их не видно, потому что и группы не видно.
А когда один добавили, то сразу все ок.
Вроде так
Так вот ведь, как делаю!!!
FormGroupControl.visible( true );
Старый 26.12.2006, 05:20   #6  
3oppo is offline
3oppo
Участник
Аватар для 3oppo
 
222 / 32 (2) +++
Регистрация: 30.06.2005
Цитата:
Сообщение от Dron AKA andy Посмотреть сообщение
form.design().controlName() - это у вас что-то странное написано, у FormBuildDesign такого метода нет.
......
Странно у меня в Аксапте есть! )
объявленно так!

PHP код:
 form = new FormRun(args); 
Старый 26.12.2006, 05:23   #7  
3oppo is offline
3oppo
Участник
Аватар для 3oppo
 
222 / 32 (2) +++
Регистрация: 30.06.2005
Цитата:
Сообщение от AndyD Посмотреть сообщение
Установите для этой группы в дизайне свойство HideIfEmpty=FALSE.
......
То что доктор прописал!! СПАСИБО, помогло!

Цитата:
Сообщение от AndyD Посмотреть сообщение
После создания контролов вызовите form.design().resetUserSetting(). Перед создание контролов вызовите FormGroupControl.lock(), а после - FormGroupControl.unLock(false) - что бы не моргала форма при добавлении
И еще - неплохо бы fControl.label() устанавливать
Для меня это не актуально я делаю это 1 раз в ините!
Старый 26.12.2006, 09:36   #8  
Dron AKA andy is offline
Dron AKA andy
Moderator
 
944 / 253 (10) ++++++
Регистрация: 27.03.2002
Адрес: Москва
Цитата:
Сообщение от 3oppo Посмотреть сообщение
Странно у меня в Аксапте есть! )
объявленно так!

PHP код:
 form = new FormRun(args); 
Дело в том, что form - это предопределенная переменная, через которую в форме можно ссылаться на связанный с ней экземпляр класса Form. И на форме переменную с таким названием объявить не удастся.
В общем, углубился в дебри, в чем не было необходимости, как выяснилось...
__________________
Андрей.
Старый 26.12.2006, 10:47   #9  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от 3oppo Посмотреть сообщение
Так вот ведь, как делаю!!!
FormGroupControl.visible( true );
Дык никто ведь не говорил, что Hidden = Visible
Если они просто делались visible(false), то из-за недочетов программистов мы бы постоянно наблюдали пустые группы

А решал именно установкой нужного свойства HideIfEmpty
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
В чем разница между salesline.QtyOrdered и SalesQty? Jab Straight DAX: Функционал 5 19.06.2007 17:04
Разница между запросами Rect DAX: Программирование 13 05.12.2006 12:44
Разница между английской и русской документацией Sirius DAX: Функционал 4 22.06.2005 15:02
Элемент управления на форме Yegor DAX: Администрирование 2 09.11.2004 16:36
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:02.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.