Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi String in Edit finden (https://www.delphipraxis.net/29930-string-edit-finden.html)

DRPEnc 16. Sep 2004 21:55


String in Edit finden
 
Ich hab ein kleines Problem.

Ich öffne eine Datei z.B. eine TXT und schreibe den Opendialog1.FileName in eine Edit1.
Dieser String hat ja nun .TXT drin stehen. Mit einem Button1 soll nun Wordpad geöffnet werden.

Nun kommts: Mit dem Opendialog1 kann ich aber auch BMPs öffen. Somit ist .BMP im String der Edit1.
Wenn ich nun auf den Button1 klicke soll Paint geöffnet werden.

Wie lese ich die Endung des Edit1.Textes aus um eine IF THEN routine zu erstellen?

Delphi-Quellcode:
var
  i: Integer;
beginn
...
If Not Opendialog1.Execute Then Exit;
edit1.text :=Opendialog1.FileName;
for i:=0 to Length(Edit1.text) do
  if (Edit1.text[i] in ('.BMP')) then
begin //hier Paint öffnen
end;
 if (Edit1.text[i] in ('.TXT')) then
begin //hier Wordpad öffnen
end;
Irgendwas stimmt noch nicht, da ich folgende Fehlermeldung bekomme:

[Error] decmain.pas(222): Operator not applicable to this operand type

Interceptor 16. Sep 2004 22:00

Re: String in Edit finden
 
Diese Routine erübrigt sich, denn IMHO erkennt Delphi-Referenz durchsuchenShellExecute das Format der jeweiligen Datei selbstständig, und öffnet diese auch im dementsprechend korrektem Programm.

Nikolas 16. Sep 2004 22:01

Re: String in Edit finden
 
Du könntest mit [oh]pos[(oh] die letzten drei Zeichen auslesen. Wenn du nur .txt. oder .bmp hast, dürfte das dann recht schnell gehen. Wenn's mehr wird, kannst du ja einfach eine Case-Anweisung bauen


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