Printer Dialog Parameter Übergabe

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Peter329.

    Printer Dialog Parameter Übergabe

    Hi,

    Ich will einen Text Array auf meinem Printer ausgeben.

    Zum Auswählen des Printers starte ich zunächst einen "PrintDialog" mit der Funktion ".ShowDialog"

    VB.NET-Quellcode

    1. 'Select printer
    2. Dim locPD As New PrintDialog()
    3. Dim locDR As DialogResult = locPD.ShowDialog()
    4. If locDR = DialogResult.Cancel Then Return


    Das klappt auch alles ganz prima .... der Text Array landet (mit nachfolgendem ProgrammCode) mit Kopzeilen und Seitennummern auf meinem Printer.

    Allerdings würde ich manchmal gern die Druckseiten beschränken .... etwa Pages 3-5 ... Dummerweise ist diese Option bei meinem Druckdialog deaktiviert. (s. Anhang)

    Der RadioButton "All" ist vom .NET ausgewählt .... und der RadioButton "Pages" lässt sich nicht aktivieren. Eigentlich ist das ja auch klar, denn woher sollte der Dialog denn auch wissen, wie viele Pages mein DruckDokument hat. Das wird ja erst später beim Druckvorgang bekannt gemacht.

    Meine Frage also: wie kann ich dem PrintDialog die (mir bekannte) Seitenanzahl mitgeben ? Geht das überhaupt ?

    LG
    Peter
    Bilder
    • s 2023-02-18 17-56-559.jpg

      16,64 kB, 423×326, 44 mal angesehen

    VB.NET-Quellcode

    1. Dim PD As New PrintDialog()
    2. PD.AllowSelection = True
    3. PD.AllowCurrentPage = True
    4. PD.AllowSomePages = True
    5. PD.PrinterSettings.PrintRange = Printing.PrintRange.SomePages
    6. PD.PrinterSettings.FromPage = 3
    7. PD.PrinterSettings.ToPage = 7
    8. '------
    9. Dim Res As DialogResult = PD.ShowDialog()
    Das gleichzeitige Erscheinen von Dummheit und Unmündigkeit nach Immanuel Kant ist eines der schlimmsten Dinge, die einem Homo sapiens in geistiger Hinsicht widerfahren können, hat manchmal aber auch durchaus seine Vorteile.
    Hast Du beim PrintDialog die Property AllowSomePages auf True?
    Argh … @myself: erst Seite aktualisieren, dann antworten.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @Peter329 Oder Du erlaubst dies im Designer:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Wow .... das ist genau das, was ich gesucht hatte. Mein PrintDialog funktioniert jetzt wie erhofft. :)

    Recht herzlichen Dank an alle Ratgeber für die ausführlichen Antworten ! Daumen hoch und Problem gelöst !

    LG
    Peter