Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Syntax Problem oder gar nicht möglich? (https://www.delphipraxis.net/103210-syntax-problem-oder-gar-nicht-moeglich.html)

Seppel 12. Nov 2007 13:39


Syntax Problem oder gar nicht möglich?
 
Hab ma ne Frage und zwar funzt das hier net so wie ich will, ich möchte ein paar sachen an die Zeichenkette hängen, was mache ich falsch:
Delphi-Quellcode:
image1.Picture.LoadFromFile('C:\Dokumente und Einstellungen\Sebastian\Desktop\Programmieren\Mysqlconnect\Pics\'+Form1.edID.text+Listbox1.Items);
Fehler: Inkompatible Typen String und TStrings.
Geht es überhaubt 2 Sachen daran zuhängen?? 1 Funzt, ich glaube ich brauche nur ein irgend eine abgrenzung, damit es weiß ein 2. kommt noch dazu.

mkinzler 12. Nov 2007 13:42

Re: Syntax Problem oder gar nicht möglich?
 
Delphi-Quellcode:
Listbox1.Items.Text

Seppel 12. Nov 2007 13:44

Re: Syntax Problem oder gar nicht möglich?
 
Verdammt, zumindest kein Felher mehr, was ein Schusselfehler^^

leddl 12. Nov 2007 13:46

Re: Syntax Problem oder gar nicht möglich?
 
Zitat:

Zitat von mkinzler
Delphi-Quellcode:
Listbox1.Items.Text

Um das etwas auszuführen (:stupid:):
Wie die Fehlermeldung schon sagt, hast du hier Äpfel und Birnen. Du versuchst, einen String mit einem TStrings zu verbinden. Das geht einfach nicht ;) TStrings ist sozusagen eine Liste aus lauter Strings, daher musst du dir - wie von mkinzler empfohlen - entweder alle Strings der Liste (mit der Eigenschaft Text) oder einen bestimmten String (mit ListBox1.Items[0] für das erste Item) herauspicken.

Seppel 12. Nov 2007 14:02

Re: Syntax Problem oder gar nicht möglich?
 
Hab ein anderes Problem, das obige habe ich ja verstanden, hätte ich wohl auch hinbekommen, heute is net mein Tag.


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.
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.

Muetze1 12. Nov 2007 18:46

Re: Syntax Problem oder gar nicht möglich?
 
Nein, du hast es nicht verstanden. Die Eigenschaft Text fasst alle Zeilen des TStrings Objektes zusammen und trennt diese durch sLineBreak (im Normalfall CR+LF). Von daher übergibst du beim Laden die komplette Liste anstatt nur einen Eintrag.

Und wie sollte der Vergleich eines Strings nach der Bearbeitung durch AnsiLowerCase() jemals noch Grossbuchstaben wie ".JPEG" enthalten?


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