![]() |
String (Dateipfad) verkürzt darstellen (mit ...)
Hallo!
Wie kriege ich das hin: Ich habe einen String ('D:\Eigene Dateien\Dokumente\Schule\Biologie\Experiment.doc') . Aus dem soll folgendes werden: ('D:\Eigene Dateien\...\Experiment.doc'). WIe macht man das? Gruß, dopeline |
Re: String (Dateipfad) verkürzt darstellen (mit ...)
|
Re: String (Dateipfad) verkürzt darstellen (mit ...)
Hi,
eventuell hilft dir ja auch die Funktion "MinimizeName" aus der Unit "FileCtrl" ;) mfG mirage228 |
Re: String (Dateipfad) verkürzt darstellen (mit ...)
Prüfe doch einfach über TCanvas.TextWidth wie breit der String wird.
Ermittle über ExtractFilePath und ExtractFileName Path und Dateiname. Kürze nun den Path-String solange, bis er inkl '...\'+Dateiname in die von dir gewünschte Anzeigefläche passt. Grüsse! |
Re: String (Dateipfad) verkürzt darstellen (mit ...)
Ah, Danke!
ich habe noch eine kleine Frage zur anwendung: was bedeuten die Variablen "NumSlashesBegin" und "NumSlashesEnd" ? Bestimmt von welchem bis welchem slash er punkten soll oder? Ich kann doch aber vorher nicht wissen, wieviele slash's im string drin sind. wenn ich einen ordner in dem pfadstring habe, der gaaanz lang ist, soll er bereitsnach einem slash punkten. aber wenn ich mehrere kleinerer ordner drin habe soll ers erst nach dem 5ten tun. kann man nicht einfach sagen, er soll nach 20 zeichen anfangen durchzulaufen und dann beim erstauftauchenden slash beginnen und vor dem letzten aufhören? Wie muss man den quelltext dafür abändern? Gruß, dopeline |
Re: String (Dateipfad) verkürzt darstellen (mit ...)
Steht alles als Kommentar unter dem Copyright in der Unit. :roll:
|
Re: String (Dateipfad) verkürzt darstellen (mit ...)
Oh... :oops:
Jetzt, wo du's sagst... Nach ein bischen rumprobieren habe ich eine gute kombination gefunden:
Delphi-Quellcode:
Ich danke euch für die hilfe!!!
procedure TForm5.Label2Click(Sender: TObject);
var max,lang,backs:integer; pathtemp:string; begin if SelectDirectory('Ordner wählen', '', CoverPfad) then //Ein OrdnerAuswahlFenster öffnet sich begin Label2.Caption:=ShortPath(CoverPfad,1,CountBackSlashes(CoverPfad)-2); //weist dem Label2 den Verkürzten Pfad zu end; end; Gruß, dopeline |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:08 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