![]() |
Delphi-Version: 10.2 Tokyo
Boolean.ToString
Hi zusammen
Eigentlich wollte ich mir nur mal eine kleinen Spickzettel schreiben und hab in der prozedur AddNewNode einige Listeneinträge meiner Reportliste hinzugefügt:
Delphi-Quellcode:
Das sieht dann so aus:
FReportlist.Add('procedure TOpenFileFrame.AddNewNode');
FReportlist.Add('Node.Text := ' + Node.Text); FReportlist.Add('LRealName := ' + aRealName); FReportlist.Add('aCaption := ' + aCaption); FReportlist.Add('LIsdirectory := '+ aIsdirectory.ToString); FReportlist.Add('-***************************************-'); Zitat:
Bislang ging ich immer davon aus, dass in Delphi False := 0; und True := <> -0 glit, was nichts anderes bedeute, dass True auch schon mal den Wert 23 haben kann. Die obigen Zeilen zeigen aber, dass
![]() Gruss Delbor |
AW: Boolean.ToString
Kannst du uns zeigen, wie du die Variable aIsdirectory deklariert hast und mit welcher Funktion du anschließend einen Wert zugewiesen hast?
|
AW: Boolean.ToString
Die Funktion ToString ruft intern BoolToStr auf und dort steht nun mal:
Delphi-Quellcode:
const
cSimpleBoolStrs: array [boolean] of String = ('0', '-1'); |
AW: Boolean.ToString
Dass True -1 zurückgibt und False 0 ist schon richtig.
|
AW: Boolean.ToString
Deswegen mache ich immer
Delphi-Quellcode:
😎
myBoolean.ToInteger().ToString()
|
AW: Boolean.ToString
Hi zusammen
Das ist der Ursprung in einer Hilfsklasse von TFilesearcher:
Delphi-Quellcode:
Diese Prozedure wird aufgerufen, wenn TFileSearcher eine Datei oder einen Ordner gefunden hat:
class function TSearchRecAnalyzer.IsDirectory(const
SearchRec: TSearchRec): Boolean; begin Result := TSearchRecAnalyzer.ContainsAttributes(SearchRec, faDirectory); end;
Delphi-Quellcode:
in der Prozedur AddNewNode werden dem erzeugten Knoten schliesslich die Werte der Datei übergeben, die er repräsentiern soll:
procedure TOpenFileFrame.FileSearcher1MatchFound(Sender: TObject;
const Path: string; const FileInfo: TSearchRec); var Complettpath, J: String; begin if Assigned(FCurrentNode) then begin Complettpath := IncludeTrailingPathDelimiter(Path) + FileInfo.Name; AddNewNode(FCurrentNode, FileInfo.Name, Complettpath,TSearchRecAnalyzer.IsDirectory(FileInfo));// <<<= FReportlist.Add('-------------------'); FReportlist.Add('procedure TOpenFileFrame.FileSearcher1MatchFound'); FReportlist.Add('----------------'); end; end;
Delphi-Quellcode:
New(NameRec);
NameRec^.RealName := aRealName; NameRec^.Caption := aCaption; NameRec^.IsDirectory := aIsdirectory; NameRec^.IsDB := LIsDB; Node.Data := NameRec; Gruss Delbor |
AW: Boolean.ToString
Hi Uwe Raabe
Danke für die Antwort! Zitat:
Gruss Delbor |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:16 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