die neue Version meiner Druckerklasse ist nun in 2 Versionen erhältlich, ANSI / OEM
-> http://www.familie-brandel.de
Neben einigen Fehlerverbesserungen gibt es 3 wichtige Neuerungen:
- oP:say(nZeile,nSpalte,cTxt ...) erleichtert die Migration -> linke obere Ecke ist 1,1
- XbpPrinterDialog() kann jetzt genutzt werden um einen Drucker auszusuchen und mit diesem dann HBPrinter zu starten.
- Die Texte des HBPrinterDialog() wurden in #defines vorangestellt und auch ins englische übersetzt.
Das erleichtert Textanpassungen.
Code: Alles auswählen
oHBPrinter := HBPrinter():New():create()
if ! oHBPrinter:IsPrinterError() // Fehler verhindern, avoid errors
oHBPrinter:addFont("12.Courier New" ) // -> 10CPI
oHBPrinter:SetFont(1)
oHBPrinter:StartDoc("SAY Print")
for nRow := 5 to 60
oHBPrinter:say(nRow,10,aZeile[nRow])
next
oHBPrinter:say(3,60,"Seite: "+str(nSeite,3))
oHBPrinter:EndDoc()
endif
? "END"
Code: Alles auswählen
#include "Gra.ch"
#include "Xbp.ch"
#include "Common.ch"
#include "Appevent.ch"
#include "Font.ch"
#pragma Library( "XppUI2.lib" )
PROCEDURE Main
LOCAL oXbpPrinter, oDlg, oHBPrinter
oDlg := XbpPrintDialog():new()
oDlg:enablePrintToFile := .f.
oDlg:printToFile := .f.
oDlg:create()
oXbpPrinter := oDlg:display()
oDlg:destroy()
if oXbpPrinter # NIL
oHBPrinter := HBPrinter():New(oXbpPrinter):create()
if oHBPrinter:IsPrinterError() // Fehler verhindern, avoid errors
? "Standarddrucker ist nicht verfgbar !"
? "Standardprinter is not ready !"
?
? "Status: ",oHBPrinter:printerStatus(),"=",cPrinterStatus(oHBPrinter:printerStatus())
else
oHBPrinter:addFont("12.Arial")
oHBPrinter:setFont(1)
oHBPrinter:StartDoc()
oHBPrinter:say(15,30,"Hello World")
oHBPrinter:say(20,10,"Drucker: ")
oHBPrinter:say(20,20,oHBPrinter:DevName)
oHBPrinter:say( 5,70,dtoc(date()))
oHBPrinter:EndDoc()
endif
oXbpPrinter:destroy()
oHBPrinter:destroy()
endif
return