Autor Beitrag
blackbirdXXX

ontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 1077
Erhaltene Danke: 1

Ubuntu Dapper

BeitragVerfasst: Di 29.07.03 11:21 
Wenn ich eine Datei mit
ausblenden Delphi-Quelltext
1:
2:
if not CopyFile(PChar(Quellé), PChar(Ziel), true) then 
label1.Caption := 'Fehler beim Kopieren';

Kopieren will und ich dies nach anzeigen des Formulares mache sieht man das Formular nicht.
Auch meine Statusanzeige nicht.
Wie kann ich machen das das Formular zuerst auftaucht. Nach jeder Datei stehen bleibt einen Balken vergrößert und dann erst weiterkopiert.

Dies ist mein Quelltext:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
var Quelldatei, Zieldatei, pfad: string;
    i, max, fehler: Integer;
begin
 pfad := ExtractFilePath(Application.ExeName) + 'data/';
 CreateDirectory(PChar(step2.Edit1.Text + '/'), nil );
 for i := 1 to dateiliste.Lines.Count do
  begin
   Quelldatei := dateiliste.Lines.Strings[i-1];
   Zieldatei := step2.Edit1.Text + '/' + Quelldatei;
   if not CopyFile(PChar(pfad + Quelldatei), PChar(Zieldatei), true) then fehler := 1;
   max := 200 div dateiliste.Lines.Count;
   fortschritt.Width := max * i;
  end;
 if fortschritt.Width > 95 then
 begin
  fortschritt.Width := 200;
  exitform.Show;
 end;
end;

_________________
Klein, schwarz und ärgert Techniker? Jumper!
patrick
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1481

WIN2k, WIN XP
D6 Personal, D2005 PE
BeitragVerfasst: Di 29.07.03 12:40 
wie heißt den die funktion in der du den quelltext eingebunden hast.
wenn du den quelltext unter onformcreate reinschreibst, wird der code bein initiallisieren des forms ausgeführt und das form wird nicht angezeigt.

wenn ich richtig liege füge den quelltext unter onformshow ein

wenn nicht... gib bitte genauere daten an wo und wie du den quelltext eingebunden hast THX

_________________
Patrick
im zweifelsfall immer das richtige tun!!!
teebee
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 109


D6 Prof
BeitragVerfasst: Di 29.07.03 14:16 
Wenn Du Deine Statusanzeige aktualisieren willst, während die Schleife läuft, musst Du als letzte Anweisung innerhalb der Schleife ein
Application.ProcessMessages; einfügen. Damit gibst Du Deinem Programm die Möglichkeit, auf die Veränderung zu reagieren.

Gruß, teebee
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 29.07.03 14:19 
Eine ebenfalls gute Idee ist Suche in: Delphi-Forum, Delphi-Library SHFILEOPERATION. Die Methode des Explorers zum Kopieren, Verschieben und Löschen. Inkl. Dialog mit Progressbar, so dass du dich um absolut nichts kümmern musst.

Man kann übrigens auch mehrere Dateien auf einmal angeben ... :wink:
blackbirdXXX Threadstarter

ontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 1077
Erhaltene Danke: 1

Ubuntu Dapper

BeitragVerfasst: Mi 30.07.03 09:06 
Das mit Application.ProcessMessages funktioniert super.

Danke

_________________
Klein, schwarz und ärgert Techniker? Jumper!