OpenDialog FileName?
Hallo,
ich habe ein kleines problem! Ich habe in meinem Programm einen OpenDialog mit dem man eine Datei auswählt. Der Dateiname soll dann in einem Label angezeigt werden. Habe das dann natürlich so gemacht:
Delphi-Quellcode:
So, nur jetzt wird mir der komplette Pfad angezeigt! Wie kann ich es ändern, dass wirklich NUR der Dateiname + Endung angezeigt wird? Also ohne Pfad?
OpenDialog1.Execute;
Label1.Caption := OpenDialog1.FileName; Danke |
Re: OpenDialog FileName?
Hallo avadex,
herzlich willkommen bei der Delphi-PRAXiS! Sieh mal in der Delphi-Online-Hilfe (OH) unter ExtractFileName und ExtractFilePath nach... |
Re: OpenDialog FileName?
super, danke! hat mir sehr geholfen! :-D
|
Re: OpenDialog FileName?
Hallo avadex,
noch ein kleiner Tipp, um Fehler zu vermeiden. Ändere deinen Befehl wie folgt:
Delphi-Quellcode:
Grüße
if OpenDialog1.Execute then
Label1.Caption := OpenDialog1.FileName else // Öffnen wurde abgebrochen, OpenDialog1.FileName ist leer ; Michael |
Re: OpenDialog FileName?
Zitat:
|
Re: OpenDialog FileName?
Hi!
Ich denke, das passt hier auch rein. ;) Wie bekommt man eigentlich die Endung weg? Mit pos kann ich das ja nicht lösen, da ich jede Endung manuell einstellen müsste, was ja unmöglich ist. :gruebel: |
Re: OpenDialog FileName?
Gibt Verzeichnis zurück
Delphi-Quellcode:
Gibt Dateinamen zurück (Ext := true --> Mit Extension)
function Verzeichnis(Filename:String):String;
var i :integer; begin for i := length(Filename) downto 0 do begin if Filename[i] = '\' then break; end; Result := copy(Filename,1,i); end;
Delphi-Quellcode:
oder mach doch mit dem Filename ne DownTo schleife bist nen Punkt findest und dann weißt du doch wo die extension anfängt
function Dateiname(Filename:String; Ext:Boolean):String;
var i : integer; datei:string; begin if Ext = true then begin for i := length(Filename) downto 0 do begin if Filename[i] = '\' then break; result := copy(Filename,i,length(Filename)); end; end else if Ext = false then begin for i := length(Filename) downto 0 do begin if Filename[i] = '\' then break; datei := copy(Filename,i,length(Filename)); Result := copy(datei,1,pos('.',datei)-1); end; end; end; |
Re: OpenDialog FileName?
Delphi-Quellcode:
s := ChangeFileExt(Filename, '');
|
Re: OpenDialog FileName?
Zitat:
|
Re: OpenDialog FileName?
Zitat:
|
Re: OpenDialog FileName?
Zitat:
Ich denke, anders wird´s auch Borlands "ChangeFileExt" nicht machen. Zumindest habe ich das so gemacht, als ich die Funktion für nonVCL-Projekte selbst geschrieben habe (wg. der SysUtils-Unit, die die Programme ja größer macht). |
Re: OpenDialog FileName?
Ich weiß, hab auch gesucht, aber es irgendwie nicht gefunden *g*
Wenn man die Sache von hinten aufzieht dann nicht C:\Windows\dasdas.dasdas.txt von hinten erkennt der das ".txt" |
Re: OpenDialog FileName?
Vielen Dank euch allen! :D
|
Re: OpenDialog FileName?
ich hab es einfach so gemacht
Delphi-Quellcode:
ist am einfachsten!
label1.caption := ExtractFileName(OpenDialog1.FileName);
|
Re: OpenDialog FileName?
Falls du mich ansprechen solltest ;)
Die Endungen müssten bei deiner Version aber noch vorhanden sein (.exe, .bmp, ...). |
Re: OpenDialog FileName?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:02 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