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 Dateityp fehler (https://www.delphipraxis.net/103230-dateityp-fehler.html)

Seppel 12. Nov 2007 18:21


Dateityp fehler
 
Jedesmal wenn ich das Bild öffne, das auch exisitiert^^ dann kommt dateiendungsfehler.
Aber eigentlich müsste alles richtig sein das Bild wird ja auch gelesen und in die Listbox eingetragen also müsste er es eigentlich auch öffnen können.

Ablauf:
Zu beginn auf Formular 1 ist die Datenbank anwendung wenn man dann jemanden auswählt kann man sich BIlder über ihn ansehen(Bilder die in seinem Ordner sind, z.B. ID 2) Lesen tut er die pics auch nur ich kann sie net in einer Imagekomponente anzeigen.
Delphi-Quellcode:
unit Unit4;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Unit1, StdCtrls, ExtCtrls, jpeg;

type
  TForm4 = class(TForm)
    ListBox1: TListBox;
    Button1: TButton;
    Image1: TImage;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form4: TForm4;

implementation

{$R *.dfm}
procedure ListAllPics(sPath: string; List: TStrings);
var Rec: TSearchRec;
begin
  List.BeginUpdate;
  List.Clear;
  if sPath[Length(sPath)] <> '\' then
    sPath := sPath + '\';
  if FindFirst(sPath + '*.*',faAnyfile,Rec) = 0 then
    begin
      repeat
        if (AnsiLowerCase(ExtractFileExt(Rec.Name)) = '.jpeg') or
            (AnsiLowerCase(ExtractFileExt(Rec.Name)) = '.jpg') or
                 (AnsiLowerCase(ExtractFileExt(Rec.Name)) = '.JPG') or
           (AnsiLowerCase(ExtractFileExt(Rec.Name)) = '.JPEG') then
          List.Add(Rec.Name);
      until FindNext(Rec) <> 0;
      FindClose(Rec);
    end;
  List.EndUpdate;
end;
procedure TForm4.FormCreate(Sender: TObject);
begin
ListAllPics('C:\Dokumente und Einstellungen\Sebastian\Desktop\Programmieren\Mysqlconnect\Pics\'+Form1.edID.text ,Listbox1.Items);
end;

procedure TForm4.Button1Click(Sender: TObject);
begin
image1.Picture.LoadFromFile('C:\Dokumente und Einstellungen\Sebastian\Desktop\Programmieren\Mysqlconnect\Pics\'+Form1.edID.text +Listbox1.Items.Text);
end;

end.

DeddyH 12. Nov 2007 18:27

Re: Dateityp fehler
 
Zum Einen fällt mir auf, dass folgende Fälle nie eintreten können:
Delphi-Quellcode:
(AnsiLowerCase(ExtractFileExt(Rec.Name)) = '.JPG') or
(AnsiLowerCase(ExtractFileExt(Rec.Name)) = '.JPEG')
Und evtl. hilft es, wenn Du zunächst ein JPEGImage erzeugst und das dann dem Image.Picture zuweist.

Seppel 12. Nov 2007 18:35

Re: Dateityp fehler
 
Funzt auch net.
Wenn ich statt dem Form1.edID1.text weglasse und statt dessen z.B. 2 schon bei dem Pfad reintippe dann funzt das ganze(habs aber erst in ner Combobox getestet müsste aber auch mit net Listbox gehen, also glaube ich dass er irgendwie da was falsch macht.

DeddyH 12. Nov 2007 18:40

Re: Dateityp fehler
 
*Huch*, das hatte ich gar nicht gesehen. ListBox1.Items.Text gibt Dir den gesamten Text aller Items zurück. Versuch es mal mit ListBox1.Items[ListBox1.ItemIndex].

Muetze1 12. Nov 2007 18:50

Re: Dateityp fehler
 
Hä? Was denn nun? Wo diskutierst du denn jetzt? Hier oder hier?

Seppel 12. Nov 2007 18:51

Re: Dateityp fehler
 
Jo das wars, hab eben auch noch was bemerkt.
Delphi-Quellcode:
image1.Picture.LoadFromFile('C:\Dokumente und Einstellungen\Sebastian\Desktop\Programmieren\Mysqlconnect\Pics\'+Form1.edID.text +'\' +Listbox1.Items[ListBox1.ItemIndex]);
Jetzt habe ich nur noch einen anderen Fehler^^
Siehe Image im anhang.
Danke schon ma.

edit:
@Muetze1:
Eine Neue Frage, ein neues Thema, ich empfand das als richtig, korrigier mich falls ich was falsch gemacht habe.


[edit=Matze]2,25 MB großen Bitmap-Anhang entfernt. Das kleinere JPG-Bild befindet sich nun ja 2 Beiträge unter diesem. MfG, Matze[/edit]

Muetze1 12. Nov 2007 18:55

Re: Dateityp fehler
 
1. Dann rede im anderen Thread nicht von einem anderen Fehler. Ich suche doch nicht vorher das Forum ab, ob du die Frage nochmal stellst. Verlinke im anderen Thread von mir aus drauf...
2. Bitmap? Du glaubst auch alle haben DSL? Bitte nutze ein besseres Format wie JPG oder PiNG. Grundsätzlich hätte die Aussage über eine Zugriffsverletzung bei Adresse 00000000 auch gereicht.
3. Lass Form1. weg. Warum du das auch immer davor schreibst...

Seppel 12. Nov 2007 18:57

Re: Dateityp fehler
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Muetze1
1. Dann rede im anderen Thread nicht von einem anderen Fehler. Ich suche doch nicht vorher das Forum ab, ob du die Frage nochmal stellst. Verlinke im anderen Thread von mir aus drauf...
2. Bitmap? Du glaubst auch alle haben DSL? Bitte nutze ein besseres Format wie JPG oder PiNG. Grundsätzlich hätte die Aussage über eine Zugriffsverletzung bei Adresse 00000000 auch gereicht.
3. Lass Form1. weg. Warum du das auch immer davor schreibst...

Form1 ist da weil edID auch auf Form 1 liegt, wie oben angesprochen, liefere gleich jpg nach.

DeddyH 12. Nov 2007 18:59

Re: Dateityp fehler
 
In dem Screenshot seh ich aber immer noch was von ListBox1.Items.Text.

Seppel 12. Nov 2007 19:03

Re: Dateityp fehler
 
Zitat:

Zitat von DeddyH
In dem Screenshot seh ich aber immer noch was von ListBox1.Items.Text.

Hab 2 Buttons 1mal ein alter, der mit dem text zum testen, hab ihn aber jetzt auch entfernt und der neue mit dem aktuellem code, kann es sein dass er meckert weil ich die ID(z.B. 2) auf die andere Form übertrage(eher auslese)?


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:15 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