![]() |
AW: Lazarus: StringGrid drucken
Zitat:
|
AW: Lazarus: StringGrid drucken
Bei BeginDoc kommt eine Exception, weil sich der Status auf Drucken ändert? Das kann ich kaum glauben. Natürlich ist auch Lazarus nicht fehlerfrei (genau wie Delphi), aber das wäre schon ein dicker Hund.
|
AW: Lazarus: StringGrid drucken
Moin,
Zitat:
Gruß Heiko |
AW: Lazarus: StringGrid drucken
Was denn für eine Suchroutine? Ich kann Dir nicht folgen.
|
AW: Lazarus: StringGrid drucken
Moin,
Zitat:
Zitat:
Delphi-Quellcode:
FindClose (FindRecord);
|
AW: Lazarus: StringGrid drucken
Ah, sag das doch gleich. Qualifizier das mal mit
Delphi-Quellcode:
[edit] Oder Windows vor SysUtils einbinden, sollte auch funktionieren. [/edit]
SysUtils.FindClose(FindRecord);
|
AW: Lazarus: StringGrid drucken
Moin,
Zitat:
Delphi-Quellcode:
Gruß Heiko
Procedure FindFiles (aPath, aFindMask: String; aWithSub: Boolean; aResult: tStrings);
Var FindRecord: tSearchRec; tempstr: String; Begin // Form1.StatusBar1.SimpleText:='Starte die Suche ...'; // // Quelle: http://www.entwickler-ecke.de/topic_nach+Dateien+suchen_1107,0.html // // Wenn die Stringliste nil ist oder aPath oder aFind nicht angegeben ist // dann raus If (aPath = '') or (aFindMask = '') or Not Assigned (aResult) Then Exit; // Wenn am Ende der Pfadangabe noch kein \ steht, dieses hinzufügen // (Oder die Funktion IncludeTrailingPathDelimiter aus der Unit SysUtils.pas verwenden) If aPath[Length (aPath)] <> '\' Then aPath := aPath + '\'; // Im aktuellen Verzeichnis nach der Datei suchen If FindFirst (aPath + aFindMask, faAnyFile, FindRecord) = 0 Then Repeat begin If (FindRecord.Name <> '.') and (FindRecord.Name <> '..') Then // ...Ergebnis in die Stringlist einfügen // Gesammter Zugriffspfad incl. Dateiname und Extention darf nicht länger als 160 Zeichen sein if length(aPath + FindRecord.Name) > 160 then Begin tempstr:= aPath + ','+ FindRecord.Name +',Zugriffpfad zu lang! Länge: '+InttoStr(length(aPath + FindRecord.Name))+' (max. 160)'; aResult.Add (tempstr); end; // Probleme bei der erneuten Archivierung if length(aPath + FindRecord.Name)+40 > 160 then Begin tempstr:= aPath + ','+ FindRecord.Name +',Erneute Archivierung nicht möglich!'; aResult.Add (tempstr); end; // Der Dateiname darf nicht länger als 32 Zeichen sein if length(FindRecord.Name) > 32 then Begin tempstr:= aPath + ','+ FindRecord.Name +',Projektname zulang! Länge: '+InttoStr(length(FindRecord.Name))+' (max. 32)'; aResult.Add (tempstr); //(aPath + FindRecord.Name); end; // Der Pfad darf nicht länger als 128 Zeichen sein if length(aPath) > 128 then Begin tempstr:= aPath + ','+ FindRecord.Name +',Projektpfad zulang! Länge: '+InttoStr(length(aPath))+' (max. 128)'; aResult.Add (tempstr); //(aPath + FindRecord.Name); end; // Es dürfen nur bestimmte Zeichen im Dateinamen sein if HatStringSonderzeichen(KillExt(FindRecord.Name)) then Begin tempstr:= FindRecord.Name +',Sonderzeichen im Projektnamen!!!'; aResult.Add (aPath+','+tempstr); //(aPath + FindRecord.Name); end; Form1.StatusBar1.SimpleText:='Suche ...'; Form1.StatusBar1.Refresh; end; Until FindNext (FindRecord) <> 0; FindClose (FindRecord); // Wenn nicht in Unterverzeichnissen gesucht werden soll dann raus If Not aWithSub Then Exit; // In Unterverzeichnissen weiter suchen If FindFirst (aPath + '*.*', faAnyFile, FindRecord) = 0 Then Repeat If (FindRecord.Name <> '.') and (FindRecord.Name <> '..') Then // Feststellen, ob es sich um ein Verzeichnis handelt If Boolean (FindRecord.Attr and faDirectory) Then // Funktion erneut aufrufen, um Verzeichnis zu durchsuchen (Rekursion) FindFiles (aPath + FindRecord.Name, aFindMask, aWithSub, aResult); Until FindNext (FindRecord) <> 0; FindClose (FindRecord); Form1.StatusBar1.SimpleText:='Die Suche ist Beendet'; End; |
AW: Lazarus: StringGrid drucken
Siehe meine letzte Antwort, da haben sich die Posts überschnitten.
|
AW: Lazarus: StringGrid drucken
Moin,
Zitat:
Delphi-Quellcode:
TR := Rect(X1,
Zitat:
|
AW: Lazarus: StringGrid drucken
Die Rect-Funktion steht IIRC in Types.pas, also wieder voll qualifizieren: Types.Rect.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:20 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 by Thomas Breitkreuz