C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
процесс копирования с 2 ProgressBar на C++ builder, 2 ProgressBar и выбор директорий
Новичёк
  Отправлено: 22.06.2005, 18:01


Не зарегистрирован







Задача такая есть форма с кнопкой Button1 (Копировать) и двумя ProgressBar'ами (ProgressBar1 и ProgressBar2), пусть по нажатию кнопкой (Копировать) запускается процесс копирования файлов.

Мне нужно чтобы по началу копирования считываемый файл представлялся как некая переменная в байтах (точее его длина или размер) и по окончанию копирования ProgressBar1 заполнялся полностью и затем обнулялся а ProgressBar2 продвигался бы на опреденный процент от общего числа (точее их длины или размера) копируемых файлов, и так далее пока процесс копировония файлов не закончится и ProgressBar2 не заполнится полностью и обнулится, тогда появится сообщение о удачном копировании...

Да видел похожую тему, но пример недействует
https://rxlib.ru/forums/index.php?s=...t=0&#entry16109

Помогите Плиззз....
Могу прислать Проэкт (пустой правда)
Проблема в том что я могу сделать процксс копирования но немогу подвязать 2 ProgressBar'а...
** Harold
Отправлено: 23.06.2005, 01:44


Не зарегистрирован







Это стандартное решение -
ПрогрессБар2->МаксПозиция = сумме байтов твоих файлов.
Читаешь кусок — двигаешь Бар...
Для ПрогрессБар1 — аналогично.
Во многих тематических книжках описано.
Guest
Отправлено: 23.06.2005, 09:08


Не зарегистрирован







Да знаю я ВСЁ это.... Я немогу описать алгоритм...
Нужно пару примеров с 2 прогрессбарами....
Boyko
Отправлено: 23.06.2005, 11:51


Станционный диспетчер

Группа: Участник
Сообщений: 88



Цикл (для ProgressBar1) в цикле (для ProgressBar2).
Gedeon
Отправлено: 23.06.2005, 11:56


Ветеран

Группа: Модератор
Сообщений: 1742



У меня не открывается приведенная Вами ссылка, если это она, то что не работает? Этот код используется вполне успешно при копировании очень сурового бэкапа, да еще и с новела.
Guest
Отправлено: 23.06.2005, 14:42


Не зарегистрирован







Gedeon ->

G> У меня не открывается приведенная Вами ссылка, если это она, то
G> что не работает? Этот код используется вполне успешно при
G> копировании очень сурового бэкапа, да еще и с новела.


А можно выслать весь проэкт целиком, с формами, а то в листинге нет листинга других файлов:
- U_CopyThread.h
- U_FileBackUp.h
- Od_Functions.h
- IdGlobal.hpp

Что в них описывается я незнаю (не телепат)...

Мой маил user32@mail.ru

За ранее спасибо...

Gedeon
Отправлено: 23.06.2005, 17:49


Ветеран

Группа: Модератор
Сообщений: 1742



Прицеплю сюда.
Мог что-то забыть, скажте.

З.Ы.
IdGlobal.hpp — это из библиотки инди, из него исп. только одна функция FileSizeByName, ее можете не использовать вообще или сделать свою.

Отредактировано Gedeon — 23/06/2005, 17:51

User Attached Image Скачать файл
copyfiles.zip


User32
Отправлено: 24.06.2005, 09:55


Ученик-кочегар

Группа: Участник
Сообщений: 7



Огромное СПАСИБО за проэкт, но у меня при компиляции выводится ошибка:
Ошибка КОМПАНОВЩИКА: Немогу открыть файл "OLDLIB.LIB"

Помоги пожайлуста разобраться с ошибкой, что за компоненты ты используешь в этом проэкте.
Уменя помимо стандартных компонентов установлены только RX Lib и Rich View ... И подскажи гдебы я мог их скачать в интернете...

Ещё раз ОГРОМНОЕ СПАСИБО ....
Gedeon
Отправлено: 24.06.2005, 11:12


Ветеран

Группа: Модератор
Сообщений: 1742



ODLIB.lib ?

Это моя библиотека, ее можно не использовать сделай Project -> Remove from project и удали ее или почистить файл *.bpr от нее.

З.Ы. Никаких сторонних компонент тут нету.
И подключи файл Od_functions.cpp через Project -> Add to Project.

Отредактировано Gedeon — 24/06/2005, 11:14
User32
Отправлено: 24.06.2005, 11:37


Ученик-кочегар

Группа: Участник
Сообщений: 7



Какие именно нужно удалить в Project -> Remove from project

вот что я вижу...


Присоединить изображение

Присоединить изображение

Gedeon
Отправлено: 24.06.2005, 12:24


Ветеран

Группа: Модератор
Сообщений: 1742



OdLib — ну а на что ругается? ohmy.gif
PsApi кстати тоже можно, он там не нужен.
User32
Отправлено: 24.06.2005, 12:34


Ученик-кочегар

Группа: Участник
Сообщений: 7



Ругается, выдает вот что:

[Linker Error] Unresolved external '__fastcall Idglobal::FileSizeByName(System::AnsiString)' referenced from D:\PROGRAM FILES\BORLAND\CBUILDER6\PROJECTS\COPYFILES_FULL\U_COPYTHREAD.OBJ
User32
Отправлено: 24.06.2005, 12:40


Ученик-кочегар

Группа: Участник
Сообщений: 7



поправвка, уже невыдаёт, ругается вот на что...



Присоединить изображение

Присоединить изображение

User32
Отправлено: 24.06.2005, 12:43


Ученик-кочегар

Группа: Участник
Сообщений: 7



и вот что выдаёт он...



Присоединить изображение

Присоединить изображение

User32
Отправлено: 24.06.2005, 14:45


Ученик-кочегар

Группа: Участник
Сообщений: 7



Всё работает, разобрался...
Но вот только непонятно как копировать файлы с директориями а на ккучей и без директории...

Подскажи пожайлуста....
Gedeon
Отправлено: 24.06.2005, 16:29


Ветеран

Группа: Модератор
Сообщений: 1742



Почитай про рекурсию, мне копировать подпапки не надо было по определению, поэтому я этого не делал, ищите на форуме, есть примеры копирования папки с подпапкими.
User32
Отправлено: 24.06.2005, 16:56


Ученик-кочегар

Группа: Участник
Сообщений: 7



СПАСИБО.

Вернуться в Вопросы программирования в C++Builder