![]() |
Laden von .jpg in Listbox funzt net
Hallo zusammen
habe ein kleines Problem Ich lade über OpenDialog .jpg dteien in eine Listbox hatte mal fnktioniert aber jetzt auf einmal nicht mehr Die datei die auswähle soll in die Listbox geladen werden was mache ich falsch
Delphi-Quellcode:
procedure TForm4.Button7Click(Sender: TObject);
begin if OpenDialog1.Execute then; //Dateimenü öffnen FileListBox1.Update; //aktualisieren end; |
Re: Laden von .jpg in Listbox funzt net
-Laß mal das Semikolon nach dem then weg.
-Du mußt ja irgendwas in die Listbox eintragen nur ein Update bringt ja nichts. Was hast du geanu vor, was meinst du mit jpg reinladen? |
Re: Laden von .jpg in Listbox funzt net
Ich wurde gerne über den Button das Opendialog öffnen, ein .jpg aus einen belibigen Ordner auswählen und da in die listbox übernehmen
|
Re: Laden von .jpg in Listbox funzt net
Den Dateinamen?
Delphi-Quellcode:
procedure TForm4.Button7Click(Sender: TObject);
begin if OpenDialog1.Execute then //Dateimenü öffnen FileListBox1.add( OpenDialog1.FileName); //aktualisieren end; |
Re: Laden von .jpg in Listbox funzt net
Die Dateinamen bekommst du so da hinein:
Delphi-Quellcode:
Bei einer einzelnen Datei:
if OpenDialog1.Execute then
for i := 0 to OpenDialog1.Files.Count - 1 do FileListBox1.Items.Add(OpenDialog1.Files[i]);
Delphi-Quellcode:
Nicht getestet.
if OpenDialog1.Execute then
FileListBox1.Items.Add(OpenDialog1.FileName); Edit: Da war Markus wohl schneller ... |
Re: Laden von .jpg in Listbox funzt net
ja das geht so aber jetzt wird der ganze pfad mit übergeben habe ich vielleicht was falsch eingestellt im OI wie gesagt vorher ging das so :cry:
|
Re: Laden von .jpg in Listbox funzt net
Delphi-Quellcode:
if OpenDialog1.Execute then
FileListBox1.Items.Add(ExtractFileName(OpenDialog1.FileName)); |
Re: Laden von .jpg in Listbox funzt net
Wenn du nur den Dateinamen möchtest, dann nutze
![]() ![]() |
Re: Laden von .jpg in Listbox funzt net
Die Bilder müssen aber über das Opendialog in einem dafür angelegten ordner gespeichert werden macht das opendialog das nicht automatisch
bei mir liegen die ordenr in diesem ordner auf den greift dann die FileListbox zu
Delphi-Quellcode:
muss man da jetzt ein savefile rein schreiben in die procedure
Bilddat:= ExtractFilePath(ParamStr(0))+'\Bilder\'; //Pfad in Variable übergeben
FileListBox1.Directory:= Bilddat; //Laden des Ordners aus dem Pfad
Delphi-Quellcode:
oder muss nicht die Filelistbox sondern der ordner angegeben werden??
procedure TForm4.Button7Click(Sender: TObject);
begin if OpenDialog1.Execute then FileListBox1.Items.Add(ExtractFileName(OpenDialog1.FileName)); end; |
Re: Laden von .jpg in Listbox funzt net
|
Re: Laden von .jpg in Listbox funzt net
? komm gerade garnicht drauf kann es sein das ich das falsch dialog benutze
|
Re: Laden von .jpg in Listbox funzt net
Ein OpenDialog ist dazu da, Dateien zu öffnen, das sagt ja auch der Name und steht sicher in der OH.
Was du allerdings möchtest, habe ich nicht verstanden. |
Re: Laden von .jpg in Listbox funzt net
ok habe es schon nur jetzt bekomme ich diesen fehler wenn ich auf die datei in der Listbox klicke
Delphi-Quellcode:
was ist das
JPEG Fehler #53
und so habe ich es jetzt gemacht
Delphi-Quellcode:
procedure TForm4.Button7Click(Sender: TObject);
begin if OpenDialog1.Execute then FileListBox1.Items.Add(ExtractFileName(OpenDialog1.FileName)); FileListBox1.Items.SaveToFile(ExtractFileName('\Bilder'+(OpenDialog1.FileName))); end; |
Re: Laden von .jpg in Listbox funzt net
Du hast nach dem then auf jedenfall ein begin - end vergessen, aber was hast du denn vor?
Dateien kopiert man mit ![]() |
Re: Laden von .jpg in Listbox funzt net
Was willst du den Speichern?
|
Re: Laden von .jpg in Listbox funzt net
Mein bild was ich im opendialog auswähle soll in diesem ordner gespeichert werden
Delphi-Quellcode:
(ExtractFileName('\Bilder'));
|
Re: Laden von .jpg in Listbox funzt net
Reicht es nicht, das einfach zu kopieren? Wieso der Umweg über die VCL?
|
Re: Laden von .jpg in Listbox funzt net
Dann nimm das von Matze erwähnte CopyFile()
.SaveToFile() speichert die (String-)Liste in eine (Text-)Datei. |
Re: Laden von .jpg in Listbox funzt net
ja die bilder sin z.b in Eigenebilder drin jetzt soll über das opendialog das ausgewählte .jpg in \bilder copiert werden.
|
Re: Laden von .jpg in Listbox funzt net
Dann nimm doch die Funktion, wie oft sollen wir dir das denn noch sagen. :wall:
|
Re: Laden von .jpg in Listbox funzt net
ja versuche es ja gerade bekomm es aber nicht ganz hin
habe jetzt ein Problem mit PAsinChar |
Re: Laden von .jpg in Listbox funzt net
So viel kann man da nicht falsch machen:
Delphi-Quellcode:
geht das nicht, dann mach es so:
CopyFile('alter Pfad', 'neuer Pfad', ggf_ueberschreiben_falls_vorhanden);
Delphi-Quellcode:
Anstelle von PChar kannst du auch PAnsiChar nutzen. Aber in der DP findest du zahlreiche funktionierende Beispiele für das Problem.
CopyFile(PChar('alter Pfad'), PChar('neuer Pfad'), ggf_ueberschreiben_falls_vorhanden);
|
Re: Laden von .jpg in Listbox funzt net
geht sowas nicht
Delphi-Quellcode:
wie gesagt weil ich die datei aos dem Opendialog auswähle
CopyFile(PChar(ExtractFileName(OpenDialog1.FileName)), PChar(ExtractFileName('\Bilder'));
es tut mir leid wenn ich nerve und es einfach ncht verstehe hab bald ne glatze weil mir vor lauter denken die haare ausfallen :lol: |
Re: Laden von .jpg in Listbox funzt net
ExtractFileName liefert dir etwas wie hallo.jpg, da weiß Windows natürlich nicht, wo es das hinkopieren soll. Lass diese Funktion einfach weg. Und der zweite Parameter erwartet ebenfalls einen kompletten Pfad einschließlich Dateiname.
|
Re: Laden von .jpg in Listbox funzt net
es soll ja die datei aus dem opendialog z.b hallo.jpg in \bilder\ kopiert werden sodas dann steht \bilder\hallo.jpg
es tut mir echt leid wenn ich es gerade überhaupt nicht blicke |
Re: Laden von .jpg in Listbox funzt net
Ohje, also, extra für dich, damit hier mal Schluss ist und ich ins Bett komme:
Delphi-Quellcode:
Übersichtlicher:
CopyFile(PChar(OpenDialog1.FileName),
PChar(IncludeTrailingPathDelimiter(ExtractFilePath(OpenDialog1.FileName)) + 'Bilder\' + ExtractFileName(OpenDialig1.FileName)), true);
Delphi-Quellcode:
Den Bilder-Pfad musst du natürlich ggf. vorm Kopieren erstellen, das geht mit
AlterPfad := OpenDialog1.FileName;
NeuerPfad := IncludeTrailingPathDelimiter(ExtractFilePath(OpenDialog1.FileName)) + 'Bilder\' + ExtractFileName(OpenDialig1.FileName); CopyFile(PChar(AlterPfad), PChar(NeuerPfad), true); ![]() ![]() Edit: Meines Wissen benötigst du IncludeTrailingPathDelimiter nicht einmal, da ExtractFilePath den abschließenden Backslash anhängen müsste, also so:
Delphi-Quellcode:
AlterPfad := OpenDialog1.FileName;
NeuerPfad := ExtractFilePath(OpenDialog1.FileName) + 'Bilder\' + ExtractFileName(OpenDialig1.FileName); CopyFile(PChar(AlterPfad), PChar(NeuerPfad), true); |
Re: Laden von .jpg in Listbox funzt net
ok ich gebe auf es funzt immer noch nicht der pfad mit dem ordner bilder ist da aber ich werde mal schauen ob ich es irgenwie hin bekomme will euch und dich nicht weiter nerven :(
|
Re: Laden von .jpg in Listbox funzt net
Ich habe oben vorhin noch etwas editiert, ich hoffe, du hast die aktuelle Version genommen.
Lass dir doch mal die Pfade mittels SchowMessage ausgeben und überprüfe, ob diese stimmen:
Delphi-Quellcode:
ShowMessage(AlterPfad + #13#10 + NeuerPfad);
Edit: Achja, du könntest den Titel mal umbenennen, sodass er etwas über's Kopieren von Dateien aussagt. |
Re: Laden von .jpg in Listbox funzt net
naja ganz klar es wird die datei von D:\eigenebilder in D:\eigenebilder\bilder kopiert obohl sie in einen anderen pfad muss der erste stimmt aber der zweite nicht.
|
Re: Laden von .jpg in Listbox funzt net
Dann pass die Pfade eben so an, wie du sie haben möchtest. Hier kann dir so keiner helfen, woher sollen wir denn deine Verzeichnisstruktur kennen. Wenn du es selbst absolut nicht hinbekommst, dann poste den Inhalt beider Variablen und wie die Pfade auszusehen haben. Doch ich denke, das schaffst auch du.
Übrigens kannst du auch mittels
Delphi-Quellcode:
den Fehler ausgeben lassen, der dein Programm zuletzt verursacht hat. In deinem Fall muss der Aufruf daher nach CopyFile erfolgen.
ShowMessage(SysErrorMessage(GetLastError));
|
Re: Laden von .jpg in Listbox funzt net
ok so stimmen jetzt die pfade aber er copiert nichts
Delphi-Quellcode:
begin
if OpenDialog1.Execute then begin AlterPfad := OpenDialog1.FileName; NeuerPfad := ExtractFilePath(ParamStr(0))+('Bilder'); CopyFile(PChar(AlterPfad), PChar(NeuerPfad), true); |
Re: Laden von .jpg in Listbox funzt net
Zitat:
|
Re: Laden von .jpg in Listbox funzt net
Es war eine sehr schwere geburt aber es funktioniert
Dank dir Tausendmal Matze für deine gedult
Delphi-Quellcode:
so klappts
procedure TForm4.Button7Click(Sender: TObject);
var AlterPfad,NeuerPfad :string; begin if OpenDialog1.Execute then begin AlterPfad := OpenDialog1.FileName; NeuerPfad := ExtractFilePath(ParamStr(0))+('Bilder\'+ ExtractFileName(OpenDialog1.FileName)); CopyFile(PChar(AlterPfad), PChar(NeuerPfad), true); FileListBox1.Items.Add(ExtractFileName(OpenDialog1.FileName)); end; end; :cheers: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:34 Uhr. |
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