![]() |
Übergabe von Werten aus MemoBox, ListBox etc.
Hallo z'samm!
Hab hier gerade folgendes "seltsames" Problem: Hab aus ner CodeLibrary (von hier oder ausm swissdelphicenter, weiß nich mehr genau) ne CodeSchnipsel um sämtliche Dateien mit einer Dateiendung eines Verzeichnisses in eine Memobox zu übernehmen. Nun will ich den ersten Wert aus dieser MemoBox an ein Label übergeben, funktinioniert, bis auf: Das erste Zeichen wurde verschluckt. Dacht ich mir, nix für ungut, probier ich das mit ner ListBox. Doch auch wenn ich die Datein erst in der ListBox aufliste und dann von dort einen Wert an ein Label weitergebe, wird der erste Buchstabe verschluckt! Kann mir einer weiterhelfen und sagen was ich falsch mache? mfG |
Re: Übergabe von Werten aus MemoBox, ListBox etc.
Was (am besten Code posten) verstehst du unter "kopieren"?
|
Re: Übergabe von Werten aus MemoBox, ListBox etc.
Ähm woher sollen wir wissen, was du falsch machst, wenn du uns nicht verräts wie du das genau machst?
Wäre also von Vorteil wenn du diese Stelle hiermal einfügst... |
Re: Übergabe von Werten aus MemoBox, ListBox etc.
naja, ich geh davon aus das der Code stimmt, weil´s ja eigentlich keine Fehlermeldung gibt, und man dabei nich so viel falsch machen kann, denk ich...
... ok, ich weiß, nicht denken, nachdenken! :) Also, 1. die Procedure um den Verzeichnis-Inhalt auszulesen:
Delphi-Quellcode:
Das führt die Prozedure aus (auf ButtonClick):
procedure TForm1.FindAllFiles(RootFolder: string; Mask: string = '*.*'; Recurse: Boolean = True);
var SR: TSearchRec; begin if AnsiLastChar(RootFolder)^ <> '\' then RootFolder := RootFolder + '\'; // * * * * * // nur bis einschließlich Delphi 4 benötigt if Mask = '' then Mask := '*.*'; // * * * * * if Recurse then if FindFirst(RootFolder + '*.*', faAnyFile, SR) = 0 then try repeat if SR.Attr and faDirectory = faDirectory then // --> ein Verzeichnis wurde gefunden // der Verzeichnisname steht in SR.Name // der vollständige Verzeichnisname (inkl. darüberliegender Pfade) ist // RootFolder + SR.Name if (SR.Name <> '.') and (SR.Name <> '..') then FindAllFiles(RootFolder + SR.Name, Mask, Recurse); until FindNext(SR) <> 0; finally FindClose(SR); end; if FindFirst(RootFolder + Mask, faAnyFile, SR) = 0 then try repeat if SR.Attr and faDirectory <> faDirectory then begin // --> eine Datei wurde gefunden // der Dateiname steht in SR.Name // der vollständige Dateiname (inkl. Pfadangabe) ist // RootFolder + SR.Name // folgende Zeile schreibt den vollständigen Namen in eine Memo Feld des // Formulars Form1 Form1.ListBox1.Items.Add(SR.Name); end; until FindNext(SR) <> 0; finally FindClose(SR); end; end;
Delphi-Quellcode:
Und hiermit übergebe ich auf ButtonClick den ersten (respektive beliebigen) Wert:
FindAllFiles('C:\test\','*.txt',false);
Delphi-Quellcode:
mfG
Label1.Caption := ListBox1.Items.ValueFromIndex[0];
|
Re: Übergabe von Werten aus MemoBox, ListBox etc.
Moin Tyler,
kannst Du mir mal verraten, was ValueOfIndex ist? Mein D5 kennt das nicht. Ansonsten funktioniert bei mir alles wie es soll. |
Re: Übergabe von Werten aus MemoBox, ListBox etc.
Probier mal
Delphi-Quellcode:
Welche Delphi-VErsion hast du denn?
Label1.Caption := ListBox1.Items[0];
ValueFromIndex kenn ich gar nicht, die Delphi Hilfe auch nciht ;-) |
Re: Übergabe von Werten aus MemoBox, ListBox etc.
hab die 7´er, aber nun gut, daran wirds nicht liegen, oder?
Der Code ist ja auch ast-rein, oder hättet ihr ne Alternative am Start bzw. wie würdet ihr den ersten Wert der ListBox auslesen? An der ListBox kann es ja nich liegen, denn bei einem MemoFeld passiert ja das gleiche! mfG und danke für die schnellen Antworten :) |
Re: Übergabe von Werten aus MemoBox, ListBox etc.
mhm ok, dann probier mal wie gesagt das hier:
Delphi-Quellcode:
Label1.Caption := ListBox1.Items[0];
|
Re: Übergabe von Werten aus MemoBox, ListBox etc.
Zitat:
mfG & Danke :D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:22 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