Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.23;
Скачать: CL | DM;

Вниз

Копирование файлов   Найти похожие ветки 

 
Первокласник Вася   (2007-08-27 16:03) [0]

Всем привет!

Решил реализовать копирование файлов. В принципе все нормально. Также решил добавить сопровождение процесса копирования - progressbar-ом. Но что-то запутался немного.
вот кусок кода
//начло процесса копирование файлов....
procedure TForm1.StartCopyClick(Sender: TObject);
var i,k: integer;
   otkuda: string;//откуда копируем
   kuda: string;  //куда копируем
   name: string;
begin
 //если файлы выбраны, то копируем.....
 otkuda:=label10.Caption;
 kuda:= label7.Caption;
 for i:=0 to listbox1.Items.Count-1 do
 if listbox1.Checked[i]= true then
 begin
 application.ProcessMessages;
 if not windows.CopyFile(pchar(otkuda),pchar(kuda+"\"+listbox1.Items.Strings[i]+".mp3"),true)then
 label9.Caption:="Ошибка копирования"else
 begin
 //если скопировано успешно, то...
 label9.Caption:="Ожидание...";
 if windows.CopyFile(pchar(otkuda),pchar(kuda+"\"+listbox1.Items.Strings[i]+".mp3"),true)then
 if fileexists(label7.Caption+"\"+listbox1.Items.Strings[i])then
 label9.Caption:="Копирование..."; //начало копирования...
 //индикатор копирования
 progressbar1.Position:= listbox1.Items.Count * 100;
 listbox1.Checked[i]:=false; //снимаем галочку со скопированного файла...
 label9.Caption:="Копирование завершено успешно"; //скопировано всё!
 progressbar1.Position:=0; //сбрасываем счетчик
end;
end;
end;

Уважаемые Мастера, помогите плиз!!!


 
KSergey ©   (2007-08-27 16:07) [1]

> progressbar1.Position:= listbox1.Items.Count * 100;

А в этой строчке переменная i не должна ли как-нибудь поучаствовать?

К стати, а в чем проблема-то? С чем запутался? С деффками?


 
Первокласник Вася   (2007-08-27 16:25) [2]

с деффками я не запутался, друг ;)

просто чета вдруг башка шарить немного перестала... подскажи


 
Сергей М. ©   (2007-08-27 16:27) [3]


> вдруг башка шарить немного перестала


Про деффкофф она "шарить перестала" , друг ?)

Или все же сподобишься описать проблему ?)


 
Первокласник Вася   (2007-08-27 16:32) [4]

Хорошо! :)

необходимо научиться реализовать визуальное отображение процесса копирования.
например из исходника: файл скопировали -> сняли галочку -> отобразили в индикаторе, что файл скопировали итак в цикле, пока не скопируем все элементы...


 
Сергей М. ©   (2007-08-27 16:35) [5]

Это понятно)
А в чем собственно проблема-то ?


 
Первокласник Вася   (2007-08-27 16:37) [6]

не показыват...


 
KSergey ©   (2007-08-27 16:38) [7]

1) Нельзя ли все же нормально описать проблему: что именно в работе приведенного кода не устраивает? Или все должны догадываться??

2) Какая задумка? Индикатор должен показывать прогресс копирования каждого файла или всех файлов, перемещаясь по мере копирования отдельного файла? (хотя это по сути в первой части спрошено)

3) Отформатируйте код для более удобного чтения (вложенные конструкции - с отступом, как это с исходниках VCL, например - уверен, вам же будет проще понять что вы и где напутали.


 
KSergey ©   (2007-08-27 16:39) [8]

> Первокласник Вася   (27.08.07 16:37) [6]
> не показыват...

Может еще раз перечитать первый же ответ?
Впрочем, отформатировать код тоже очень поможет.


 
Сергей М. ©   (2007-08-27 16:39) [9]

Ну так показывай строчку, в которой ты пытаешься "показать", а оно, зараза, "не показывает")..
С подробными комментариями, что и зачем ты написал в этой строчке ..


 
Первокласник Вася   (2007-08-27 16:45) [10]

ребята, вот здеся чета не шарится у меня :(

label9.Caption:="Копирование..."; //начало копирования...
//индикатор копирования
progressbar1.Position:= listbox1.Items.Count * 100;
listbox1.Checked[i]:=false; //снимаем галочку со скопированного файла...
label9.Caption:="Копирование завершено


 
KSergey ©   (2007-08-27 16:50) [11]

> Первокласник Вася   (27.08.07 16:45) [10]
>ребята, вот здеся чета не шарится у меня

Пипец какой-то...
Код компилируется и работает. Работает так, как написано.
Но, видмо, это не устраивает.

Но НИГДЕ! не хочешь написать как ты хотел бы, чтобы оно работало. Этого ведь никто кроме тебя не знает! Можешь это понять наконец??!

И как тогда на твой вопрос можно ответить? разве что игнорировать все прочие "разъяснения" в том же духе... Видимо придется.


 
Сергей М. ©   (2007-08-27 16:50) [12]


> Первокласник Вася   (27.08.07 16:45) [10]


Ты [1] прочитал ?


 
clickmaker ©   (2007-08-27 17:08) [13]


> progressbar1.Position:= listbox1.Items.Count * 100;

в чем смысл-то этого?


 
grisme ©   (2007-08-27 17:19) [14]

clickmaker ©   (27.08.07 17:08) [13]

шо-то я тоже глянул и тоже подумал аналогично :)



Страницы: 1 вся ветка

Текущий архив: 2007.09.23;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.025 c
11-1171922028
Виталий*
2007-02-20 00:53
2007.09.23
Проблема с прозрачностью на ровном месте.


2-1188455990
mfender
2007-08-30 10:39
2007.09.23
TIdPOP3 - ошибка


1-1184325115
atruhin
2007-07-13 15:11
2007.09.23
Не работает Anchors с MDIChild формой


2-1188430458
чувак
2007-08-30 03:34
2007.09.23
как показать baloon-tip ?!


2-1188554563
БарЛог
2007-08-31 14:02
2007.09.23
Как узнать свободное место на удалённом компьютере?