Форум: "Прочее";
Текущий архив: 2008.08.31;
Скачать: [xml.tar.bz2];
ВнизПрогресс бар при сохранении документа в Ворде Найти похожие ветки
← →
Andy BitOff © (2008-07-11 15:28) [0]Существует ли возможность отобразить в своей программе ход выполнения сохранения документа в Ворде? Создаю огромный документ (CreateOleObject) и процесс сохранения (Doc.Save) длится несколько секунд, бывает до 20-30.
← →
Alien1769 © (2008-07-11 16:45) [1]Да
← →
Andy BitOff © (2008-07-11 17:00) [2]> Alien1769 © (11.07.08 16:45) [1]
А нельзя ли поподробнее. Где об этом почитать?
← →
Alien1769 © (2008-07-11 17:26) [3]И тебе вопрос, что уже сделано для сохранения ?
Минимально код плиз участка сохранения.
← →
Andy BitOff © (2008-07-11 17:36) [4]> Alien1769 © (11.07.08 17:26) [3]
WordApp := CreateOleObject("Word.Application");
WordApp.Documents.Open(PatternFileName);
Doc := WordApp.ActiveDocument;
... //работа с документом
lbl_InfoProcess.Caption := "Сохранение документа...";
Doc.Save;
← →
Юрий Зотов © (2008-07-12 11:08) [5]> Andy BitOff © (11.07.08 15:28)
Поскольку в процессе сохранения Word никаких обратных уведомлений не шлет, то возникает проблема привязки позиции прогрессбара (привязывать ее просто не к чему). Можно придумать какой-то косвенный алгоритм расчета позиции, но гораздо проще (и с точки зрения интерфейса вряд ли хуже) использовать TAnimate.
← →
Andy BitOff © (2008-07-12 12:09) [6]> Юрий Зотов © (12.07.08 11:08) [5]
Это-то я всё прекрасно понимаю, но думал, что по незнанию... может Ворд и имеет методы с посылкой уведомлений. Вот, надеялся Alien1769 © просвятит.
← →
Kostafey © (2008-07-12 17:45) [7]Такого плана идея.
> //работа с документом
в некорорых случаях это работа с БД (например скролирование
по записям). Можно прогресс бар к этому привязать.
Разумется это не как не учивает работу самого Ворда,
но в некоторых частных случаях может смотреться
довольно неплохо...
← →
Andy BitOff © (2008-07-12 18:05) [8]> Kostafey © (12.07.08 17:45) [7]
Это уж как-то слишком хитро ;)
Не та задача, что бы так потеть. Если бы возможность была, то было бы удобно, а нет, так и нет, и надписью обойдутся.
Если бы скорость сохранения не от чего бы не зависила, всмысле от мощей машины, то можно былобы по времени прогресс сделать. Так как содержимое документа известно и поддается такому анализу, т.е. существует прямая зависимость времени сохранения от количества данных.
← →
AFHU (2008-07-12 18:18) [9]> Если бы возможность была, то было бы удобно
А может всё-таки есть какой-то выход?
Вот например в Word 2007 (да и в предыдущих версиях) в нижней статусной строке отображается прогресс сохранения :)
Его оттуда никак не "выдрать"? Пусть даже каким-то изощрённым способом
← →
Alien1769 © (2008-07-12 21:38) [10]
> Его оттуда никак не "выдрать"? Пусть даже каким-то изощрённым
> способом
Вот на это я натякнул автору, да способ немного извращенный но..
Автор спросил, я ответил.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.08.31;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.009 c