Антон Кузнецов (kvan) привел совет как сделать стандартный ProgressBar более удобным, изменив всего лишь одну строчку кода. Совет подходит для версий ax2.5, ax3.0, ax4.0. Для версии Dynamics AX 2009 написан отдельный совет.

Комфортный ProgressBar

Стандартный ProgressBar был создан когда гайды диктовали делать окна такими, чтобы они умещались в размер 640х480 пикселей. С тех пор прошло много времени, а дизайн и поведение ProgressBar'а не менялись. А самое главное - стандартный ProgressBar по прежнему очень узкий, хотя современные мониторы стали достаточно широкими.

Чтобы сделать ProgressBar более удобным достаточно изменить всего лишь один символ в методе класса SysOperationProgressForm.setupForm(). В стандартном ProgressBar устанавливается ширина не меньше 200 пикселей, а нужно установить ширину не меньше 600.

Найдите строчку

formStaticTextControl.width(max(200,formDesign.widthValue()-
                                    formDesign.leftMarginValue()-
                                    formDesign.rightMarginValue())); 

И замените 200 на 600.

Изменение одного символа в методе SetupForm сделает более удобным ProgressBar в Axapta 3.0 и Microsoft Dynamics AX 4.0

Сравните стандартный progress bar:

Стандартный progressbar с шириной 200 пикселей

и комфортный progress bar:

Улучшенный progressbar с шириной 600 пикселей

Можно задать минимальную ширину и побольше. Но не увлекайтесь - слишком широкие окна будут неудобны на старых машинах с древними видеокарточками, а также на серверах или при работе в удаленном доступе в оконном режиме.

Антон Кузнецов (kvan).

Дополнительная информация

См. также: Какие проблемы у SysOperationProgress?, Свой progressBar.

Внимание: Посмотрите в форму tutorial_Progress чтобы узнать больше о возможностях стандартого ProgressBar'а и о методике работы с этим объектом.

Возможности ProgressBar в трехуровневой среде Форма tutorial_progress в Microsoft Dynamics AX

ProgressBar с несколькими бегунками из стандартной формы tutorial_progress

Встроенный в форму ProgressBar

Буду рад Вашим замечаниям и предложениям.
E-Mail: mazzy@mazzy.ru, Мазуркин Сергей