Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Dateiverwaltung?? (https://www.delphipraxis.net/24988-dateiverwaltung.html)

sui 29. Jun 2004 13:37


Dateiverwaltung??
 
Moin,

ich versuch mir grad mal die Funktionen der Dateiverwaltung
beizubringen. Mit DiskFree und DiskSize komm ich mittlerweile
klar.


Code:
var
  Form1: TForm1;
  partition, partitionfrei : int64;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);

begin
partition := DiskFree(3);
partitionfrei := partition div 1024 div 1024 ;
label1.caption := inttostr(partitionfrei);
end;
Jetzt will ich die FileAge-Funktion ausprobieren, so mit
Datei öffnen-Menü. Das Öffnen-Menü ist auch kein Problem:

Code:
procedure TForm1.Open1Click(Sender: TObject);
begin
Opendialog1.Execute;
Hier muss doch noch was hin wo der DateiName in eine Variable geladen wird???
end;
Weiter komm ich einfach nicht, verlier immer den Faden... :nerd: :roteyes:

Christian Seehase 29. Jun 2004 13:38

Re: Dateiverwaltung??
 
Moin Sui,

schau Dir noch einmal genau die Eigenschaften von TOpenDialog an.

Ultimator 29. Jun 2004 13:40

Re: Dateiverwaltung??
 
Delphi-Quellcode:
procedure TForm1.Open1Click(Sender: TObject);
begin
Opendialog1.Execute;
Hier muss doch noch was hin wo der DateiName in eine Variable geladen wird??? 
end;
Machs doch so:
Delphi-Quellcode:
procedure TForm1.Open1Click(Sender: TObject);
var NamederDatei:string;
begin
if Opendialog1.Execute then
NamederDatei:=OpenDialog1.Filename;
end;
Mit if OpenDialog1.Execute fragst du zusätzlich noch ab, ob der Anwender nich den Dialog mit 'Abbrechen' geschlossen hat.

[edit]
Zitat:

Zitat von Christian Seehase
Schau Dir noch einmal genau die Eigenschaften von TOpenDialog an.

Meinst du etwa das? :lol: [/edit]

sui 29. Jun 2004 14:07

Re: Dateiverwaltung??
 
Sorry aber die Delphi-Hilfe von Delphi ist einfach sch.....!

Da steht jetzt sowas:

Code:
Delphi-Syntax:

function FileAge(const FileName: string): Integer;
Mehr nicht. Wie soll ich jetzt anhand dieses Beispiels diese
Funktion einbauen können?


PS. Weiss einer wo meine Faden ist???
Manchmal ist das ganze einfach zum verzweifeln...

Christian Seehase 29. Jun 2004 14:14

Re: Dateiverwaltung??
 
Moin Sui,

hast Du bei der Überschrift Beschreibung aufgehört zu lesen? ;-)

sui 29. Jun 2004 14:17

Re: Dateiverwaltung??
 
Nein natürlich nicht, aber soweit bin ich ja noch gar nicht
gekommen, als das ich den Wert schon umwandeln könnte.

Ich kann nix mit dem const anfangen. Ich versteh überhaupt nicht
warum eine Konstante, wo ich den Pfad doch schon in der Variablen
Datei drin hab. Und überhaupt wohin mit der Funktion.

Deswegen mein ich das die Hilfe nicht so klasse ist.
Muss ich erst noch eine Konstante deklarieren?

Gollum 29. Jun 2004 14:19

Re: Dateiverwaltung??
 
Hallo,

die Lösung Deines Problemes hat Dir doch Ultimator schon gepostet.

Delphi-Quellcode:
var
  DateiDatum:TDateTime;
  aAge     :Integer;
...
...
if OpenDialog1.Execute then
begin
  aAge:=FileAge(OpenDialog1.FileName);
  if (aAge<>-1) then
  begin
    DateiDatum:=FileDateToDateTime(aAge);
    ShowMessage('Dateidatum: '+DateTimeToStr(DateiDatum));
  end else ShowMessage('Datei ist nicht vorhanden...');
end; // if
[edit]Teppfihler beseitigt...[/edit]

Christian Seehase 29. Jun 2004 14:24

Re: Dateiverwaltung??
 
Moin Sui,

wenn ein Parameter als Const deklariert ist, kannst Du Konstanten und Variablen übergeben.
Richtig wichtig wird die Deklaration erst, wenn dort var steht, weil dann keine Konstante übergeben werden kann.

Gollum 29. Jun 2004 14:27

Re: Dateiverwaltung??
 
Hallo,

Zitat:

Zitat von Delphi-Hilfe
Konstantenparameter

Ein Konstantenparameter (const) entspricht einer lokalen bzw. schreibgeschützten Variablen. Konstantenparameter entsprechen weitgehend Wertparametern. Sie können ihnen jedoch im Rumpf einer Prozedur oder Funktion keinen Wert zuweisen und sie nicht als var-Parameter an eine andere Routine übergeben. Übergeben Sie eine Objektreferenz als Konstantenparameter, können Sie weiterhin auf die Objekteigenschaften zugreifen und diese ändern.
Die Verwendung von const ermöglicht dem Compiler die Optimierung des Codes für strukturierte und String-Parameter. Gleichzeitig wird die versehentliche Übergabe eines Parameters als Referenz an eine andere Routine verhindert.

Das folgende Beispiel ist der Header der Funktion CompareStr in der Unit SysUtils:

function CompareStr(const S1, S2: string): Integer;

Da S1 und S2 im Rumpf von CompareStr nicht geändert werden, können sie als Konstantenparameter deklariert werden.


sui 29. Jun 2004 14:35

Re: Dateiverwaltung??
 
Danke das klappt, aber verstanden hab ichs noch nicht ganz.

Code:
aAge:=FileAge(OpenDialog1.FileName);
soll das sein:

Code:
FileAge(const FileName: string): Integer;
Dann ist das (const FileName: string) quasi (quasi) ein Beipiel.
Konstante heisst für mich einfach nur: unveränderbarer Wert, während
Variablen ständig neue Werte annehmen können. Variabel eben.

Das hab ich in meinem Delphi für Kids gelesen :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:57 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz