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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.08.2007, 17:17   #1  
Lucky13 is offline
Lucky13
Участник
1C
 
714 / 198 (8) ++++++
Регистрация: 21.10.2004
Цитата:
Сообщение от mazzy Посмотреть сообщение
Т.е. и стандартный infolog в топку?
Так то два окна - progress и infolog, а то одно
Старый 09.08.2007, 17:27   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Lucky13 Посмотреть сообщение
Так то два окна - progress и infolog, а то одно
И в самом деле...


И все-таки меня удивляют две вещи:
1. это конечно же общие таблицы.
2. то, что вы так настойчиво хотите сделать ОДНО окно.

Вы никогда не делали прогресс-бар где-то в нутрях расчетов? Т.е. есть общий процесс, который сам по себе отображает какой-то прогресс. А внутри каким-нибудь побочным классом делается расчет какой-нибудь циферки, который в свою очередь требует прогресс-бара.

Если будет ОДНО окно, то нужно протаскивать ссылку на него до самых внутренних методов и сторонних классов. А стандарт здорово облегчает жизнь. Достаточно создать новый прогресс, а стандарт сам прилепит к существующему окошку.

Неужели никогда не делали?
Ну, что-нибудь в виде
X++:
static void Job1(Args _args)
{
    SysOperationProgress progress1;
    SysOperationProgress progress2;
    int i;
    int total
;
    progress1 = SysOperationProgress::newGeneral('','',100);
    progress1.setText('Задача 1');
    progress1.update(true); // принудительно заставляем показать окно
    sleep(1000); // происходит какая-то длительная операция
    progress1.setCount(100); // 100% :)
    progress1.update(true); // принудительно заставляем показать окно

    total = 100000;
    progress2 = SysOperationProgress::newGeneral('','',total);
    progress2.setText('Задача 2');
    progress2.update(true); // принудительно заставляем показать окно
    for(i=0; i<total; ++i)
    {
        progress2.incCount();
    }
    progress2.update(true); // принудительно заставляем показать окно
    pause;
}
Только progress1 и progress2 находятся в разных методах и совершенно ничего не знают друг о друге...
Изображения
 
__________________
полезное на axForum, github, vk, coub.
Теги
benchmark, progress bar, интерфейс, как правильно, crm2011

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
ProgressBar exodus DAX: База знаний и проекты 7 20.08.2008 11:33
ProgressBar в StatusBar(е) Morpheus DAX: База знаний и проекты 8 10.09.2007 15:21
Как запустить свой класс при входе пользователя в систему? miaa DAX: Программирование 2 24.05.2007 15:04
Как сказать форме подогнать свой размер Prof DAX: Программирование 10 25.11.2005 16:33
Как создать свой Web-портал? Zman DAX: Программирование 4 21.01.2005 11:23
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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