Listbox mit mehreren Tabs Drucken

Doc Joker

Grünschnabel
Hallo Leute!

Wie ihr sicher schon gedacht habe benötige ich etwas Hilfe.

Ich habe eine Listbox die ich gerne Ausdrucken möchte. Das ist an sich kein Problem. Allerdings habe ich in dieser Listbox mehrere selbst definierte Tabstops gesetzt, um dadurch eine liste mit mehreren Spalten zu bekommen. Leider war ich schon gezwungen die Tabs (vbTab) selbst zu definieren, weil sonst die gefahr besteht, dass die Einträge (die unterschiedlich lang sind) in der Spalte verrutschen.

Nun, in der Listbox sieht das ganze jetzt ja auch sehr gut aus. Aber beim Ausdrucken übernimmt der Drucker leider nicht meine definierten Tabstops, sondern setzt statt dessen den standart Tabstop. Sodas einige Einträge auf dem Ausdruck in der Zeile verschoben sind.

Was kann ich tun, damit mein Ausdruck genauso aussieht wie meine Listbox?

Im übrigen beziehe ich meine Daten aus einer Datenbank. Vielleicht gibt es ja irgend eine Mögliochkeit zu "mogeln".

Ich bin dankbar für jede Anregung.
 
Zuletzt bearbeitet:
Grid?

Hast Du schon mal daran gedacht, mit einem FlexGrid oder mit einem DataGrid zu arbeiten? Ein DataGrid kann z.B. direkt an eine Datenquelle gebunden werden und füllt sich dann (praktisch wie in Access) von selbst.
 
Zunächst einmal danke ich dir sehr für deine schnelle Antwort, Numiel.

Aber klar, habe ich schon einmal daran gedacht, und auch etwas mit FexGid und DataGrid experimentiert. Allerdings war es auf der Form rein Optisch nicht akzeptabel. Wie gesagt. Die gefüllte Listbox sieht genau so aus wie ich sie haben will. Nur bekomme ich sie so leider nicht 1:1 ausgedruckt. Und das wiederum nur wegen der Tabs die ich gesetzt habe.
Im Grunde ist es auch nicht so wichtig, das die Listbox direkt ausgedruckt wird. Ich möchte ledeglich nachher etwas auf dem Papier haben, das der Optik der Liste entspricht. Also kann genausogut irgendetwas intern neu erstellt werden, das halt beim Ausdruck so aussieht wie die Liste.
 
Hurra, ich habe es hinbekommen.

Ich könnte mich ohrfeigen, denn eigentlich ist es doch sehr einfach.
bei einer Printer.print Anweisung kann man auch Tabs bestimmen. Allerdings sieht es etwas anders aus als bei einer Listbox.
Bei einer Listbox muß man vorher die Tabwerte bestimmen und ruft sie nur mit vbTab auf.
Beim Printer.Print Ereignis kann man die Tabs direkt in der Codezeile festlegen.
(Printer.Print "Bla"; Tab(29); "Bla bla"; Tab(56); ...)

Jedoch danke ich nochmals für die schnelle Antwort.
 

Neue Beiträge

Zurück