Autor Beitrag
SebTheRipper
Hält's aus hier
Beiträge: 11



BeitragVerfasst: So 27.04.03 22:08 
Ich hab folgendes Problem. Ich arbeite an einem Programm, in diesem soll man per doppelklick auf eine Datei(in shelltreeview-komponente geladener verzeichnisbaum)den dateinamen + die endung mit showmessage( ) bekommen. Wie mache ich das?
Und natürlich muss vorher abgefragt werden ob es ein ordner ist oder eine datei, weil das nur angezeigt werden soll wenn es eine datei ist.
Letzteres sollte ich aber auch selber hinkriegen, wichtig is das mit der endung.
Am besten in dieser form:

ausblenden Quelltext
1:
showmessage( quelltext für den datei namen und die endung );					


ps: Bitte mitbenötigten Uses

Danke im vorraus

SebTheRipper
TheNeon
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 408

Windows
VS2010 C#
BeitragVerfasst: So 27.04.03 23:02 
musst du nicht einfach nur nach dem letzten . Suchen und der Text danach ist die Endung ?!?
wulfskin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1349
Erhaltene Danke: 1

Win XP
D5 Pers (SSL), D2005 Pro, C, C#
BeitragVerfasst: Mo 28.04.03 15:56 
Die Funktion die du suchst heisst ExtractFileExt und befindet sich (hoffentlich) in der Unit SysUtils. Den Rest bekommst du hoffentlich selber hin!

Gruß wulfskin!

_________________
Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
SebTheRipper Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Mo 28.04.03 18:19 
Wenn ich ExtractFileExt benutze zeigt er mir an: undefinierter bezeichner, uses sysutils sind drin, in der hilfe steht auch das die dazugehörige uses sysutils ist, aber er nimmt es nicht an, egal ob ich extractfileext alleine schreibe oder zb mit showmessage(shelltreeview1.Selected.ExtractFileExt)
Kann sein das ich da irgendwas simples nicht erkenne aber ich komm da einfach nich weiter, man kann auch in der shelltreeview nicht zb file oder so auswählen zb: ..view1.selected.name wie das zb bei der nmftp komponente geht(nmftp1.FTPDirectoryList.name.Strings[x])

ich hoffe ich stell mich nicht allzu blöde an bin halt nochn anfänger

SebTheRipper
Luncustaf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 324

Win 2k
D7 Ent.
BeitragVerfasst: Do 05.06.03 15:22 
hi,

du musst das anders anwenden und zwar so

ausblenden Delphi-Quelltext
1:
ShowMessage(ExtractFileEx(shelltreeview1.selected);					



gr€€tz
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Do 05.06.03 15:27 
Hi,

Zitat:
ausblenden Delphi-Quelltext
1:
ShowMessage(ExtractFileEx<span style="color: red"><span style="font-weight: bold">t</span></span>(shelltreeview1.selected);					


AXMD

PS.: Was hab ich bei den Code-Tags falsch gemacht :?: :shock:
ErnestoChe
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 528

Win 2000 pro, CRUX 2.0
Delphi 6 Pers, Open K3
BeitragVerfasst: Do 05.06.03 16:39 
Hallo

das hier

ausblenden Delphi-Quelltext
1:
str := ShellTreeView1.SelectedFolder.PathName;					


das hier Zeigt dir den kompletten Pfad des markierten Eintrags an mit Dateiendung.
Wenn du nur den Dateinamen + Endung brauchst machst du halt noch folgendes:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TfrmMain.Button1Click(Sender: TObject);
var
  str: String;
begin
  str := ShellTreeView1.SelectedFolder.PathName;
  SpeedButton1.Caption := ExtractFileName(str )+ ExtractFileExt(str);
end;


MFG

- Ernesto -

// Nachtrag: man muß nicht alle Methodennamen im Kopf haben. Gib einfach nur den Objektnamen ein, wie z.B. ShellTreeView1 und dann setzt einen Punkt dahinter und es öffnet sich das Fenster mit der Codevervollständigung. Gehe die Liste einfach durch. Meistens haben die Methoden selbstbeschreibende Namen, und man kann so die gesuchte Methode finden. Auch wenn ein bisschen umständlich ist.