4D v16.3

Print object

Home

 
4D v16.3
Print object

Print object 


 

Print object ( {* ;} Objekt {; posX {; posY {; Breite {; Höhe}}}} ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
Operator in Mit Stern: Objekt ist ein Objektname (String)
Ohne Stern: Objekt ist eine Variable
Objekt  Formularobjekt in Mit Stern: Objektname oder Ohne Stern: Variable
posX  Lange Ganzzahl in Horizontale Position des Objekts
posY  Lange Ganzzahl in Vertikale Position des Objekts
Breite  Lange Ganzzahl in Breite des Objekts (Pixel)
Höhe  Lange Ganzzahl in Höhe des Objekts (Pixel)
Funktionsergebnis  Boolean in Wahr = Objekt wird vollständig gedruckt; sonst Falsch

Die Funktion Print object druckt die Formularobjekte, definiert durch die Parameter Objekt und * und positioniert durch die Parameter posX und posY.

Vor Aufrufen dieser Funktion müssen Sie die Tabelle oder das Projektformular, welches die zu druckenden Objekte enthält, über den Befehl FORM LOAD bestimmen.

Mit dem optionalen Parameter * geben Sie an, dass der Parameter Objekt ein Objektname, also eine Zeichenkette ist. Übergeben Sie keinen *, geben Sie an, dass Objekt eine Variable ist. In diesem Fall übergeben Sie eine Variablenreferenz (nur Objekttyp) anstelle eines String.
Die Parameter posX und posY geben den Ausgangspunkt zum Drucken der Objekte an. Die Werte müssen in Pixel ausgedrückt werden. Ohne diese Parameter wird das Objekt gemäß seiner Position im Formular gedruckt.
Die Parameter Breite und Höhe definieren die Breite und Höhe des Formularobjekts. Die Funktion Print object unterstützt keine Objekte mit variabler Größe. Zur Größenverwaltung von Objekten müssen Sie den Befehl OBJECT GET BEST SIZE verwenden. Über diesen Befehl können Sie auch die am besten geeignete Größe für Objekte mit Text herausfinden. Analog zu FORM LOAD legt auch Print object nicht automatisch Seitenumbrüche an. Das muss der Entwickler gemäß seinen Anforderungen selbst verwalten.
Sie können über 4D Befehle Objekteigenschaften, wie Farbe, Größe, etc. direkt verändern.

Die Funktion gibt Wahr zurück, wenn das Objekt vollständig gedruckt wurde und Falsch, wenn das nicht der Fall ist, d.h. es konnten nicht alle in Objekt zugeordneten Daten innerhalb des gesetzten Rahmens gedruckt werden.
Die Funktion gibt beim Drucken von Listboxen Falsch zurück, wenn nicht alle Zeilen der Listbox gedruckt werden konnten. In diesem Fall können Sie einfach die Funktion Print object so oft aufrufen, bis sie Wahr zurückgibt. Ein spezifischer Mechanismus sorgt dafür, dass der Inhalt des Objekts nach jedem Aufruf weiter gescrollt wird.  

Hinweise:

  • In der aktuellen 4D Version gilt dieser Mechanismus nur für Objekte vom Typ Listbox. Für alle anderen Objekte gibt er immer Wahr zurück. Diese Funktionsweise wird in zukünftigen 4D Versionen auf andere Objekte mit variablem Inhalt ausgeweitet.
  • Über den Befehl LISTBOX GET PRINT INFORMATION können Sie den Status während dem Druckvorgang kontrollieren.

Die Funktion Print object lässt sich nur im Kontext eines Druckauftrags verwenden, der zuvor über den Befehl OPEN PRINTING JOB geöffnet wurde. Wird er nicht in diesem Kontext aufgerufen, führt er nichts aus. Im gleichen Druckauftrag lassen sich mehrere Funktionen Print object aufrufen.

Hinweis: Hierarchische Listen, Unterformulare und Web Areas sind nicht druckbar.

Zehn Objekte in einem Formular drucken:

 PRINT SETTINGS
 If(OK=1)
    OPEN PRINTING JOB
    If(OK=1)
       FORM LOAD("PrintForm")
       x:=100
       y:=50
       GET PRINTABLE AREA(hpaper;wpaper)
       For($i;1;10)
          OBJECT GET BEST SIZE(*;"Obj"+String($i);bestwidth;bestheight)
          $end:=Print object(*;"Obj"+String($i))
          y:=y+bestheight+15
          If(y>hpaper)
             PAGE BREAK(>)
             y:=50
          End if
       End for
    End if
    CLOSE PRINTING JOB
 End if

Eine komplette Listbox drucken:

 Repeat
    $end:=Print object(*;"mylistbox")
 Until($end)



Siehe auch 

FORM LOAD

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Drucken
Nummer: 1095

 
GESCHICHTE 

Erstellt: 4D v12

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)