tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
1520
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    catarock catarock ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    10
    Hallo Leute,
    habe mich jetzt schon intensiv mit dem Thema Drucken beschaeftigt, jedoch macht mir mein Programm immer noch einen Strich durch die Rechnung.
    Ich will eine Textdatei ausdrucken, es erscheint in der ShortCutLeiste auch mal kurz das DruckerSymbol,aber das wars dann auch. Keine Tätigkeit des Druckers.
    Wenn ich mir "service" ausgeben lasse, schreibt er: Win 32 Printer: Lexmark Z53 usw.
    Das sollte doch heissen, dass er "Ihn" auch findet und anspricht, oder?
    Vielleicht kann mir ja einer/-e sagen wo mein Fehler liegt. Ich dreh noch am Rad.
    Vielen Dank im Vorraus!
    Hier mein Code:

    //Datei als Datenquelle einlesen.
    FileInputStream textStream = null;
    try {
    textStream = new FileInputStream("c:/Mauerwerksbemessung.txt") ;
    } catch(FileNotFoundException ex) {
    FehlerLabel.setText(ex.toString());
    }

    //Datenformat erzeugen.
    DocFlavor format = DocFlavor.INPUT_STREAM.AUTOSENSE;

    //Dokument erzeugen.
    Doc myDoc = new SimpleDoc(textStream, format, null) ;

    //Drucker suchen
    PrintService service = PrintServiceLookup.lookupDefaultPrintService();
    //Druckauftrag für einen Drucker erzeugen und Dokument drucken.
    DocPrintJob job = service.createPrintJob() ;
    try {
    job.print(myDoc, null);
    } catch(PrintException ex) {
    FehlerLabel.setText(ex.toString());
    }
    }

    Gruss Cata
    Geändert von catarock (14.10.04 um 20:32 Uhr)
     

  2. #2
    Avatar von Bernd1984
    Bernd1984 Bernd1984 ist offline Kastenbrot
    Registriert seit
    Oct 2004
    Beiträge
    414
    habe dein Code-Schnipsel in eine neue Klasse gesteckt und die angegebene Datei wird auf dem Standartdrucker (bei mir Laserdrucker) problemlos gedruckt.

    Der Code ist Ok.

    Ist die Datei eine reine ASCII-Textdatei?


    Bernd1984

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    
        /*
         * Created on 14.10.2004
         */
        package test;
        
        import java.io.FileInputStream;
        import java.io.FileNotFoundException;
        
        import javax.print.Doc;
        import javax.print.DocFlavor;
        import javax.print.DocPrintJob;
        import javax.print.PrintException;
        import javax.print.PrintService;
        import javax.print.PrintServiceLookup;
        import javax.print.SimpleDoc;
        
        public class drucken {
        
        
            public static void main(String[] args) 
            {
        //      Datei als Datenquelle einlesen.
                FileInputStream textStream = null;
                try {
                textStream = new FileInputStream("c:/test.txt") ;
                } catch(FileNotFoundException ex) {
                      ex.printStackTrace();
                }
        
        //      Datenformat erzeugen.
                DocFlavor format = DocFlavor.INPUT_STREAM.AUTOSENSE;
        
        //      Dokument erzeugen.
                Doc myDoc = new SimpleDoc(textStream, format, null) ;
        
        //      Drucker suchen
                PrintService service = PrintServiceLookup.lookupDefaultPrintService();
        //      Druckauftrag für einen Drucker erzeugen und Dokument drucken.
                DocPrintJob job = service.createPrintJob() ;
                try {
                job.print(myDoc, null);
                } catch(PrintException ex) {
                      ex.printStackTrace();
                }
            }
        }

    PS: Code-Beispiele sollten zur besseren Lesbarkeit in den Code-Tag ("#" über der Texteingabe) geschrieben werden.
    Geändert von Bernd1984 (14.10.04 um 11:21 Uhr)
     

  3. #3
    catarock catarock ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    10
    Danke erst mal fuer die Antwort und den Hinweis mit dem CodeTag, sollte wohl mal die Netiquette lesen.
    Habe das ganze nicht als Klasse sondern als Methode programmiert, sollte doch eigentlich kein Problem darstellen, oder?
    Und ja die auszugebende Datei ist eine reine Textdatei, die ich vorher mit einem FileWriter erstellt habe, in der ich die Bemessungsergebnisse meines Programms wahlweise auf dem Bildschirm oder Drucker ausgeben kann, sorry will.
    Und wie gesagt, unten rechts, neben der Uhr, ist kurzzeitig das Druckersymbol zu sehen, jedoch tut sich ansonsten nichts. Der angschlossene Drucker ist der einzige und dementsprechend auch der Standarddrucker. Habe es auch mal an meinem Laptop probiert, selbes Ergebnis.
    Bekomme noch die Krise, vieleicht findet ja jemand was und kann mir weiterhelfen.
    Vielen Dank im Vorraus
    Gruss Cata


    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    
    public void Drucken()  { 
    // Datei als Datenquelle einlesen.
    FileInputStream textStream = null;
      try { 
          textStream = new FileInputStream("c:/Mauerwerksbemessung.txt");
      } 
      catch (FileNotFoundException ex) {
          FehlerLabel.setText(ex.toString());
      }
    // Datenformat erzeugen.
      DocFlavor format = DocFlavor.INPUT_STREAM.AUTOSENSE; 
    // Dokument erzeugen. 
      Doc myDoc = new SimpleDoc(textStream, format, null); 
    // Default Drucker suchen.
      PrintService service = PrintServiceLookup.lookupDefaultPrintService();
    // Druckauftrag für einen Drucker erzeugen und Dokument drucken. 
      DocPrintJob job = service.createPrintJob(); 
      try { 
           job.print(myDoc, null); 
      }  
      catch (PrintException ex) { 
           FehlerLabel.setText(ex.toString()); 
      } 
    }
    Geändert von catarock (14.10.04 um 20:20 Uhr)
     

  4. #4
    Avatar von Bernd1984
    Bernd1984 Bernd1984 ist offline Kastenbrot
    Registriert seit
    Oct 2004
    Beiträge
    414
    Probier doch mal die Klasse die ich gepostet habe, um zu sehen, ob es an deine Methode liegt oder am Rechner.
     
    Gruss Bernd
    Zitat Zitat von mAu
    * Unformatierten Quellcode schaue ich mir _nicht_ an!
    * Sollte ich euch bei einer Frage weitergeholfen haben, würde ich mich über eine positive Bewertung freuen.
    * Bitte die Netiquette beachten.
    * Vergesst nicht, beantwortete Fragen als erledigt zu markieren!

  5. #5
    catarock catarock ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    10
    wie rufe ich denn diese Klasse aus meinem Programm heraus auf. stehe wahrscheinlich wieder mal voll im Wald. Sorry fuer die Frage aber momentan qualmts nur noch im Kopf.
    Gruss Cata
     

  6. #6
    Avatar von Bernd1984
    Bernd1984 Bernd1984 ist offline Kastenbrot
    Registriert seit
    Oct 2004
    Beiträge
    414
    Von deinem Programm garnicht, es ist ja ein eigenständiges Programm. Einfach die main starten, so wie du auch dein Programm startest.

    Du musst evtl. das package anpassen, je nachdem, wo du das Programm speicherst.

    Welche Entwicklungsumgebung benutzt du denn?
    Geändert von Bernd1984 (15.10.04 um 08:55 Uhr)
     
    Gruss Bernd
    Zitat Zitat von mAu
    * Unformatierten Quellcode schaue ich mir _nicht_ an!
    * Sollte ich euch bei einer Frage weitergeholfen haben, würde ich mich über eine positive Bewertung freuen.
    * Bitte die Netiquette beachten.
    * Vergesst nicht, beantwortete Fragen als erledigt zu markieren!

  7. #7
    catarock catarock ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    10
    Danke Bernd, erst mal fuer Deine Muehe bis jetzt. Also nachdem ich wieder zu Sinnen gekommen bin habe ich die Klasse ausprobiert, und es passiert genau das selbe wie in meinem Programm. Im Systary Icon oder so aehnlich erscheint kurz das Druckersymbol und das wars dann. Scheint also irgendwie an meiner Hardware zu liegen. Jetzt muss ich wohl mal zusehen, dass ich irgendwo mein Programm mal auf einer anderen Maschine testen kann.
    Uebrigens ich benutze den JBulider X.
    Gruss Cata
     

Ähnliche Themen

  1. Drucken
    Von SirWayne im Forum Java
    Antworten: 0
    Letzter Beitrag: 02.06.07, 19:33
  2. Drucken mit VC++ .net
    Von Test im Forum VisualStudio & MFC
    Antworten: 1
    Letzter Beitrag: 26.08.03, 11:23
  3. Drucken
    Von Kyrodust im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 08.04.03, 09:45
  4. Drucken - mal wieder aber anders...
    Von Sliver im Forum Photoshop
    Antworten: 19
    Letzter Beitrag: 11.02.03, 18:40
  5. Ich mal wieder,habe mal wieder eine Frage...
    Von Kuscheltier im Forum Photoshop
    Antworten: 3
    Letzter Beitrag: 16.09.01, 19:24