Announcement

Collapse
No announcement yet.

Druckproblem

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Druckproblem

    Hallo,
    unten stehender Programmteil soll mir den Inhalt einer RichTextBox ausdrucken. Leider sind die vom Drucker *bedruckten* Seiten alle leer. Woran kann es liegen.
    Schon mal vielen Dank für jede Antwort.

    Gruß
    Horst

    ...
    prtDlg1.AllowSomePages = true;
    prtDlg1.AllowPrintToFile = true;
    prtDlg1.AllowSelection = true;

    PrintDocument Bill2Prt = new PrintDocument();
    Bill2Prt.DocumentName = rtbHR.Text;
    prtDlg1.Document = Bill2Prt;

    if(prtDlg1.ShowDialog() == DialogResult.OK) {
    try {
    Bill2Prt.Print();
    }
    catch {
    ...

  • #2
    Grüß Dich Horst,<br>
    also ich dachte immer, man muss zum Drucken ein Graphics Objekt instanzieren welches dann gedruckt wird. Außerdem geht das über das Event "PrintPage". Das heißt Du brauchst ein PrintDocument Objekt (z.B. "PrintDocument printingPage = new PrintDocument ();" ). Dann erstellst Du eine Funktion die Du zum Ereignis "PrintPage" hinzufügen kannst (dort wird nämlich eigentlich gedruckt ). Die Deklaration der Funktion sieht aus wie folgt:<br>
    private void PrintMyPage(object sender, PrintPageEventArgs e)
    {
    .
    .
    .
    }<br>
    Das hinzufügen des Ereignisses geschieht dann mit:<br>
    printingPage.PrintPage += new PrintPageEventHandler(PrintMyPage);<br>
    Irgendwo im Quelltext möchtest Du dann ja sinnigerweiße mal etwas ausdrucken. Das geschieht mit aufruf der Funktion "Print()". Print() ruft nun das Ereignis PrintPage auf. Dort ist jetzt ja eingetragen. Nun musste in dieser Funktion (PrintMyPage) weiterschreiben. Hier einfach mal ein kleines Beispiel.<br>
    private void PrintMyPage(object sender, PrintPageEventArgs e)
    {

    Graphics g = e.Graphics;
    Font myFont = new Font("Tahoma", 10);
    g.DrawString("Das ist ein Test", myFont, Brushes.Black, 10, 10);

    }<br>
    und damit sollte auf dem Ausdruck auch was erscheinen. So mache ich das zumindest immer.<br>
    Gruß

    Helmut Markus Seid

    Comment

    Working...
    X