Xojo Conferences
MBSSep2018MunichDE
XDCMay2019MiamiUSA

graphics.nextpage (Real Studio network user group Deutschland Mailinglist archive)

Back to the thread list
Previous thread: Absturz unter Windows
Next thread: was der HTML-Viewer nicht kann


Probleme mit String Bearbeitung   -   Markus Schnell
  graphics.nextpage   -   Christian Hahn

graphics.nextpage
Date: 06.08.10 20:31 (Fri, 6 Aug 2010 21:31:02 +0200)
From: Christian Hahn
Irgendwie komme ich nicht drauf:

Ich möchte mehrere Seiten ausdrucken mit jeweils wechselnden Daten eines RecordSet.

Mit OpenPrinterDialog kann ich auch einen anderen als den Standard-Drucker auswählen und bekomme das Graphics-Objekt, in das ich drucken kann. OK.

Nun habe ich den Vorgang in 2 Routinen aufgeteilt, in der ersten wird das RecordSet durchlaufen und für jeden Datensatz die eigentliche Druck-Routine aufgerufen.

Damit nicht immer ein leeres Blatt nachgeschoben wird, wird für den letzten Datensatz NextPage nicht aufgerufen.



Aber der Fehler scheint woanders zu liegen: Der letzte Ausdruck kommt immer erst, wenn das Fenster, in dem R02_AusdruckSteuern liegt, geschlossen wird.

Was übersehe ich?



besten Dank für Rat und Hilfe, Christian Hahn.



'-----------------------------------------------------------------

Sub R02_AusdruckSteuern



PrinterGrafikObjekt = OpenPrinterDialog()



RSAusdruck.MoveFirst

for i = 1 to RSAusdruck.RecordCount

R03_BildAusdrucken PrinterGrafikObjekt



if i < RSAusdruck.RecordCount then

ReportFenster.R03_BildAusdrucken PrinterGrafikObjekt, True

else

ReportFenster.R03_BildAusdrucken PrinterGrafikObjekt, False

end if



RSAusdruck.MoveNext

next



Sub End

'-----------------------------------------------------------------

Sub R03_Ausdrucken (PrinterGrafikObjekt As Graphics, NextPage as Boolean)



Dim p as PrinterSetup

p = New PrinterSetup



if PrinterGrafikObjekt <> nil then



PrinterGrafikObjekt.DrawPicture

PrinterGrafikObjekt.DrawString

...



if NextPage = true then

PrinterGrafikObjekt.NextPage

end if



end if



End Sub