AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Abfage einer FileListbox auf doppelte dateien

Ein Thema von SaFu · begonnen am 1. Aug 2007 · letzter Beitrag vom 2. Aug 2007
Antwort Antwort
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#1

Abfage einer FileListbox auf doppelte dateien

  Alt 1. Aug 2007, 22:43
hi leutz

Ich denke mal die überschrift sagt alles

so gehts nicht

Delphi-Quellcode:
 if FileListBox1.Items.IndexOf(FileListbox1) then
    begin
      MessageDlgPos('Datei vorhenaden',mtInformation,[mbOk],0,290,300);
     end
gruss sascha
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
DelphiKlaus

Registriert seit: 18. Okt 2006
100 Beiträge
 
Delphi 6 Professional
 
#2

Re: Abfage einer FileListbox auf doppelte dateien

  Alt 2. Aug 2007, 07:10
Hallo,

wenn, dann vielleicht so:

Delphi-Quellcode:
  if FileListBox1.Items.IndexOf (FileListbox1.Items [FileListBox1.ItemIndex]) then
    MessageDlgPos ('Datei vorhanden', mtInformation, [mbOk], 0, 290, 300);
Dann wird aber nur überprüft, ob der angewählte Eintrag doppelt vorkommt. Wenn Du alle doppelten haben willst:

Delphi-Quellcode:
  for Loop1 := 0 to Pred (FileListBox1.Items.count) do
    for Loop2 := Succ (Loop1) to Pred (FileListBox1.Items.count) do
      if FileListBox1.Items.IndexOf (FileListbox1.Items [Loop2]) <> Loop2 then
        MessageDlgPos ('Datei vorhanden', mtInformation, [mbOk], 0, 290, 300);
Habs nicht getestet; aber so in etwa sollte es gehen.

Viele Grüße

Klaus
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Abfage einer FileListbox auf doppelte dateien

  Alt 2. Aug 2007, 18:35
Leider geht das doch nicht so

Delphi-Quellcode:
procedure TForm7.speichern;
begin
if FileListBox1.Items.IndexOf (FileListbox1.Items [FileListBox1.ItemIndex])then
    MessageDlgPos ('Wollen Sie Wirklich diese Datei überschreiben', mtInformation, [mbYes,mbNo], 0, 290, 300):= mbYes then
   begin
    speichern;
   end;
end;
es muss nür abgfragt werden ob die datei vorhanden ist in der FilListBox und wen ja nur fragen ob sie überschrieben werden soll oder nicht
????
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: Abfage einer FileListbox auf doppelte dateien

  Alt 2. Aug 2007, 18:42
Hallo Sascha,

kannst du mal genauer beschreiben, was du unter Doppelte Datei verstehst?

Jede Datei in deiner FileListBox wird wohl auch auf der Platte existieren - und in der FileListBox selbst werden wohl nie zwei gleiche Dateinamen stehen.

Freundliche Grüße
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#5

Re: Abfage einer FileListbox auf doppelte dateien

  Alt 2. Aug 2007, 18:48
ja stimmt doof erklärt

wenn die datei unter dem Namen sascha schon in der FileListBox enthalten ist und ich speicher jetzt nochmal eine datei unter sascha wird die alte datei einfach ohne abfrage überschrieben und jetzt möchte ich einfach vorher eine abfrage einbauen

z.b sowas nur für die fileListBox weiss ich nicht wie das geht
Delphi-Quellcode:
  if ComboBox3.Items.IndexOf(ComboBox4.text)> -1 then
     begin
      if MessageDlgPos('Wollen Sie wirklich die Datei überschreiben? '
       +'',mtInformation,[mbYes,mbNo],0,290,300) = mrYes then
         begin
          speichern
         end;
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Abfage einer FileListbox auf doppelte dateien

  Alt 2. Aug 2007, 18:58
Hallo Sascha,

warum prüfst du nicht gleich, ob die fragliche Datei auf der Platte existiert?

Delphi-Quellcode:
var
  fn: TFileName;
begin
  with FileListBox do
    fn := {Pfad + } Items[ItemIndex];
  if not FileExists(fn) or AllowReplace(fn) then
    DateiSpeichern(fn);
end;
Freundliche Grüße
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: Abfage einer FileListbox auf doppelte dateien

  Alt 2. Aug 2007, 19:01
Also ghet das net so das ich einfach die FileListBox abfrage sonnst wäre es koplizierter mit dem code weil der inhalt der fileListBox sich stätig ändert aus unterschiedlichen ordnern
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: Abfage einer FileListbox auf doppelte dateien

  Alt 2. Aug 2007, 19:16
Was du wirklich vor hast, das kann ich nicht mal ahnen. Aber irgendwo hast du einen Dateinamen und einen Inhalt für diese Datei und du möchtest sicher stellen, dass diese Datei nur nach Beantwortung einer Sicherheitsrückfrage überschrieben wird. Dabei helfen dir FileEXists() und deine eigene Funktion AllowReplace(), in der du deinen MessageDialog unterbringen kannst. Die FileListBox ist für mich nur Beiwerk. Letzte Sicherheit gibt dir nur der Existenztest auf der Platte.

Wenn ich das Problem noch nicht erkennen sollte, dann kannst du es ja vielleicht noch etwas besser beschreiben.
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#9

Re: Abfage einer FileListbox auf doppelte dateien

  Alt 2. Aug 2007, 19:42
sorry bin ja auch ne hohlbirne hab ja ne Combobox worüber ich diese abfrage gestallten kann

Delphi-Quellcode:
 if FileListBox1.Items.IndexOf(ComboBox4.Text+'.txt') >-1 then
   begin
    if MessageDlgPos ('Wollen Sie Wirklich diese Datei überschreiben',mtInformation,[mbYes,mbNo],0,290,300)= mrYes then
     begin
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:20 Uhr.
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