Главная страница
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.022 c
2-1188323336
Kashey
2007-08-28 21:48
2007.09.23
TBitBtn


15-1187855606
pavel_guzhanov
2007-08-23 11:53
2007.09.23
формат jpg


2-1188252050
Silver...
2007-08-28 02:00
2007.09.23
EhLib30eva - OnNotInList -> Не хочет работать


15-1187989967
Petr V. Abramov
2007-08-25 01:12
2007.09.23
Способны ли Вы отличить голос Родины от вражеских голосов? :)


15-1186752698
_Mike_
2007-08-10 17:31
2007.09.23
Про компилятор