Thema: Delphi Label Print?

Einzelnen Beitrag anzeigen

Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#17
  Alt 16. Jun 2002, 18:20
Hallo Privateer3000,

es kommt darauf an, wann du die Label - Captions drucken möchtest. Auf Knopfdruck, beim Beenden des Programms oder bei welchem Ereignis.

Der Aufruf ist dann einfach:
Code:
   ScanLabels(Self)
Wenn du aber sowieso die Methode ScanLabels als Methode der Klasse deiner Form deklariert hast, könntest du den Parameter aForm auch weglassen und dafür im Programmcode anstelle von aForm die Variable self verwenden. Außerdem hat die Procedure WriteToFile einen festeingestellten Programmnamen. Ich würde diesen als Parameter übergeben. Dann sähe das Ganze wie folgt aus:

Code:
Procedure TForm1.ScanLabels(datNam : String );
var index : Integer;
Begin
  For index:= 0 To Self.ComponentCount-1 Do
  Begin
    If (Self.Component[index] is TLabel) Then
      With TLabel(Self.Component[index]) Do
        WriteToFile( aForm.Name+'.'+Name+'.Caption:= '+Caption, datNam);
  End;
End;
und
Code:

Procedure TForm1.WriteToFile( aString, datNam : String );
var aFile : TextFile;
Begin
  AssignFile( aFile, datNam );
  Reset( aFile );
  WriteLn( aFile, aString );
  CloseFile( aFile );
End;
Der Aufruf würde dann lauten:
Code:
ScanLabels('C:\Delphi\Test\Labels.Txt');
oder wie immer die Datei heißen soll.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat