Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Dateinamen vergeben (ansteigend) (https://www.delphipraxis.net/43415-dateinamen-vergeben-ansteigend.html)

Assun 3. Apr 2005 18:32


Dateinamen vergeben (ansteigend)
 
Hi !

wie kann ich ansteigende Dateinamen vergeben ? z.b. beim 1. Klick wird datei 001.jpg erstellt, beim 2.klik die datei 002.jpg...

wie geht das ß?

danke im Voraus,

Euer Assun

mr47 3. Apr 2005 18:35

Re: Dateinamen vergeben (ansteigend)
 
du lässt einfach einen Integer mitlaufen, der immer eins höher gezählt wird (also bei jedem Klick) und wandelst den Integer dann in einen String um.

mfg

ReDoX 3. Apr 2005 18:35

Re: Dateinamen vergeben (ansteigend)
 
Hi
Deklarie eine Globale variable im OnCreate setze sie auf 0.
Bei einem Click auf den BUtton machst du Inc(deineVariable) und danach speicherst du das bild Image+IntToStr(deinevariable).
Mfg ReDoX

Luckie 3. Apr 2005 18:35

Re: Dateinamen vergeben (ansteigend)
 
Globale Variable im private Bereich und mit Inc hochzählen nach jedem Klick.

malo 3. Apr 2005 18:38

Re: Dateinamen vergeben (ansteigend)
 
Im Chat hörst du ja nicht auf mich, deshalb hier ein Code.

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    i: integer;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  i := 1;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  inc(i);
end;

end.
Die erhöht die Variable. Jetzt musst du nach jedem Screenshot einmal inc(i) schreiben und die Zahl in den Dateinamen schreiben. Fertig.

MathiasSimmack 3. Apr 2005 18:44

Re: Dateinamen vergeben (ansteigend)
 
Und was, wenn ich jetzt 20 Bilder gespeichert habe, und "bild20.jpg" lösche? :stupid:

malo 3. Apr 2005 18:46

Re: Dateinamen vergeben (ansteigend)
 
Zitat:

Zitat von MathiasSimmack
Und was, wenn ich jetzt 20 Bilder gespeichert habe, und "bild20.jpg" lösche? :stupid:

Dann gehts trotzdem mit 21 weiter ;)

Die Zahl solltest du übrigens irgendwo speichern (in einer .ini oder in der Registry), damit du sie jederzeit auslesen kannst ;)

3_of_8 3. Apr 2005 19:03

Re: Dateinamen vergeben (ansteigend)
 
Wenn man die führenden Nullen angeben will, muss man noch folgendes machen:

Delphi-Quellcode:
const prefix='JPG'
      stellen=3

...

zahlstr:=inttostr(zahl);
for I:=1 to stellen-length(zahlstr) do
zahlstr:='0'+zahlstr;
//Und dann noch:
dateiname:=prefix+zahlstr;

Luckie 3. Apr 2005 19:05

Re: Dateinamen vergeben (ansteigend)
 
Zitat:

Zitat von 3_of_8
Wenn man die führenden Nullen angeben will, muss man noch folgendes machen:

Delphi-Quellcode:
const prefix='JPG'
      stellen=3

...

zahlstr:=inttostr(zahl);
for I:=1 to stellen-length(zahlstr) do
zahlstr:='0'+zahlstr;
//Und dann noch:
dateiname:=prefix+zahlstr;

Delphi-Referenz durchsuchenFormat. ;)

3_of_8 3. Apr 2005 19:12

Re: Dateinamen vergeben (ansteigend)
 
Ich weiß, ich kompliziere alles, aber (!) es funktioniert. :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:39 Uhr.
Seite 1 von 2  1 2      

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