Gambas: Drucken

Aus Wikibooks
Wechseln zu: Navigation, Suche


Zurück zu Gambas


Drucken funktioniert unter Gambas mit dem Printer Objekt. Es findet sich in der Komponente GB.QT.

Siehe Gambas Komponenten.

Wenn Sie mehr Informationen zum Printer Objekt brauchen, dann wählen Sie in Gambas mit F1 die Hilfe Funktion. Im Hilfe Browser können Sie im SUCHEN Feld das Stichwort Printer eingeben.

Ein paar Zeilen im Direktausdruck[Bearbeiten]

Man kann den Drucker ohne Dialog ansteuern. Wie das geht zeigt folgendes Programm. Sie brauchen dazu:

  • eine Form
  • einen Befehlsknopf
  • eine Textarea

Holen Sie sich diese Steuerelemente mit F6 aus der Werkzeugkiste.

Dann fügen Sie folgenden Code ein:

PUBLIC SUB Form_Open()
ME.Text = "Druckprogramm mit dem Printer Befehl"
ME.Width = 400
ME.Height = 400 
ME.Center
Button1.Text = "Ausdruck im Querformat"
Button1.Width = 200
Button1.X = 16
Button1.Y = 24
Textarea1.Text = "Dies ist ein Test für den Drucker!"
Textarea1.X = 16
Textarea1.Y = 64
Textarea1.Width = 312
Textarea1.Height = 248
END
PUBLIC SUB Button1_Click()
 Printer.Colormode = 0 
 'Stellt den SchwarzweißDruck ein
 Printer.Orientation = 0 
 'Hochformat 
 Draw.Begin(Printer) ' Initialisiert den Ausdruck 
 Draw.Text(TextArea1.Text, 200, 200) 
 ' Druckt den Inhalt der TextArea in die linke obere Ecke 
 Draw.End ' Die Seite wird an den Drucker abgeschickt.
END

Der erste Teil des Programmes ist für den Ausdruck überflüssig. Es erleichtert Ihnen nur die Einstellung der Steuerelemente auf der Form und wird direkt beim Start des Programmes ausgeführt. ( Sub Form Open ) Der eigentliche Ausdruck erfolgt erst nach anklicken von Button1. Dort finden Sie die Druckerbefehle.

Drucken mit Dialog[Bearbeiten]

Man kann den Drucker mit einem Auswahl Dialog ansteuern, um den gewünschten Drucker vor dem Druck zu wählen. Hierzu erweitern Sie das Beispiel "Ein paar Zeilen im Direktausdruck" um den Befehl: Printer.Setup()

Wie das geht zeigt folgendes Programm. Sie brauchen dazu:

  • eine Form
  • einen Befehlsknopf
  • eine Textarea

Holen Sie sich diese Steuerelemente mit F6 aus der Werkzeugkiste.

Dann fügen Sie folgenden Code ein:

PUBLIC SUB Form_Open()
ME.Text = "Druckprogramm mit dem Printer Befehl"
ME.Width = 400
ME.Height = 400 
ME.Center
Button1.Text = "Ausdruck im Querformat"
Button1.Width = 200
Button1.X = 16
Button1.Y = 24
Textarea1.Text = "Dies ist ein Test für den Drucker!"
Textarea1.X = 16
Textarea1.Y = 64
Textarea1.Width = 312
Textarea1.Height = 248
END
PUBLIC SUB Button1_Click()
 Printer.Setup() ' Auswahl Drucker 
 Printer.Colormode = 0 
 'Stellt den SchwarzweißDruck ein
 Printer.Orientation = 0 
 'Hochformat 
 Draw.Begin(Printer) ' Initialisiert den Ausdruck 
 Draw.Text(TextArea1.Text, 200, 200) 
 ' Druckt den Inhalt der TextArea in die linke obere Ecke 
 Draw.End ' Die Seite wird an den Drucker abgeschickt.
END

Der erste Teil des Programmes ist für den Ausdruck überflüssig. Es erleichtert Ihnen nur die Einstellung der Steuerelemente auf der Form und wird direkt beim Start des Programmes ausgeführt. ( Sub Form Open ) Der eigentliche Ausdruck erfolgt erst nach anklicken von Button1. Dort finden Sie die Druckerbefehle.

Drucken im Querformat[Bearbeiten]

Hierzu können Sie das oben erwähnte Beispeil "Ein paar Zeilen im Direktausdruck" anpassen. Ändern Sie den Befehl Printer.Orientation = 0 nach 1 Der Wert für das Hochformat = 0 und für das Querformat = 1

Drucken einer Grafik[Bearbeiten]

Drucken in eine Postscript PS Datei[Bearbeiten]

Drucken Abbrechen[Bearbeiten]

Printer Klasse Theorie[Bearbeiten]

In Gambas ist das Printer Objekt ein grafisches Gerät, deswegen nutzen Sie die Methoden der Draw Klasse um damit auszudrucken.

Beispiel:

IF Printer.Setup() THEN RETURN
'Dialog anschalten
Draw.Begin(Printer) ' Initializes the draw
Draw.Text(TextArea1.Text, 200, 200) ' Druckt den Inhalt der Textarea in dle linke obere Ecke des Druckers.
Draw.Foreground = Color.Red
Draw.Rect(500, 200, 32, 32) ' Druckt ein kleines Rechteck
Draw.End ' Die Seite wird an den Drucker gesendet.
Printer.NewPage ' Eine neue Seite wird angesteuert.


Die Printer Klasse ist statisch.

Eigenschaften von Printer[Bearbeiten]

  • ColorMode

'Schwarzweiß oder Farbe

  • Copies

'Zahl der Kopien

  • File

'In eine PS datei drucken

  • FromPage

' Ausdruck erst mit dieser Seite beginnen

  • ToPage

'Ausdruck bei dieser Seite bereits beenden

  • Height

'Seitenlänge

  • Width

'Seitenbreite

  • MaxPage

'Die größte Seitennummer die man wählen kann

  • MinPage

'Die kleinsten Seitennummer die man wählen kann

  • Name

'Name des Druckers

  • Orientation

'Hoch- oder Querformat

  • Resolution

'Auflösung in DPI

  • Size

'DIN A3,A4 Letter etc


Methoden von Printer[Bearbeiten]

  • Abort

'Druck abbrechen

  • Setup

'Druckdialog starten

  • NewPage

'Seitenvorschub Neue Seite anfangen

Konstanten von Printer[Bearbeiten]

Black 'Schwarzweiß

Color 'Farbausdruck

Landscape 'Querformat

Portrait 'Hochformat


Printer.Print[Bearbeiten]

Den beliebten VB Befehl Printer.Print gibt es leider in Gambas noch nicht. Das kann man vielleicht ergänzen.