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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.08.2006, 12:09   #1  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Cool
Молотком

Во вложении - ответ.

Как применять:
1. На форме в ClassDeclaration определить пару переменных
X++:
DLL                 dll;
DLLFunction         AxScrollGroup;
2. В Init() формы добавить код
X++:
    dll = new Dll("AxScroll.dll");
    AxScrollGroup = new DLLFunction(dll, "AxScrollGroup");

    AxScrollGroup.returns(ExtTypes::DWord);
    AxScrollGroup.arg(ExtTypes::DWord);
3. Подключать к нужному контролу так (можно в Init() формы после super())
X++:
if ([].hWnd()) AxScrollGroup.call([].hWnd());
4. Цеплять к контролам Group или TabPage. Для Group свойство FrameType ставить в None
5. На этих контролах размещать только группы или табы. Все остальные контролы должны находиться в этих элементах
6. Подключать можно неограниченное количество элементов (например, все закладки на форме InventTable)

Для скроллинга можно использовать колесо мыши. С зажатой кнопкой SHIFT - по вертикали, CONTROL - по горизонтали

Из замеченных глюков:
1. Если разместить на управляемой группе элемент ввода (например, StringEdit) (не во вложенной группе), то при скроллировании и перерисовке формы будет неправильно отображаться Label контрола
2. Если разместить на управляемом контроле Grid (не во вложенной группе), то при изменении размера формы и смещенным движкам скроллера Grid перескочит в верхний левый видимый угол.
3. При изменении размеров контрола (например, для Grid'а изменение ширины столбцов ), если смещены движки скроллера, то контрол перескочит в верхний левый видимый угол.
4. При изменении размеров контрола (например, для Grid'а изменение ширины столбцов) скроллеры не реагируют (не происходит пересчет размеров клиентской области). Если после этого изменить размер управляемой группы (например, изменить размер окна), то все корректно пересчатается
5. Если управляемый контрол Группа и для него включено FrameType, то некорректно будет происходить перерисовка элементов фрейма
Вложения
Тип файла: rar AxScroll.rar (11.4 Кб, 142 просмотров)
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: mazzy (5), slava (1), Garic (1), George Nordic (5), Hidden (1), Lemming (1), Logger (9), bagyr (1), kvg6 (1), konopello (1), MikeR (2), gl00mie (1), Bil Meshkoff (1).
Теги
ax3.0, ax4.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ruslan Goncharov: Scrolling in AX 3.0 without dll Blog bot DAX Blogs 0 09.03.2008 23:20

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

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

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