Als u een printer wilt bewust Java- applicatie te schrijven , is het meestal voldoende om een object PrintJob met de javax.print bibliotheek die wordt geleverd met de SDK te maken en laat het besturingssysteem zorgen te maken over de beschikbaarheid printer . Echter , als je een beetje meer detail over wat de standaard printer in staat is en of het nu online is nodig , kunt u de PrinterAttributeSet gebruiken om meer informatie over de printer te krijgen. Instructies 1 Maak een PrinterStatusReport klasse . Als u een geïntegreerde ontwikkelomgeving ( IDE ) te gebruiken zoals Netbeans of Eclipse , zal er een optie in het menu "Bestand " om dit proces te automatiseren . Anders kunt u gewoon een platte tekst editor zoals Kladblok openen en opslaan met de naam Plak de volgende code erin om de klasse te definiëren " PrinterStatusReport.java . " : Public class PrinterStatusReport { //Alle andere code zal hier gaan . } 2 Voeg een belangrijke methode om de klas door de volgende code tussen de haakjes van de plakken PrinterStatusReport : public static void main ( String [ ] args ) { } 3 Plak de volgende code tussen de haakjes van de belangrijkste methode : PrintService printer = PrintServiceLookup.lookupDefaultPrintService ( ) ; AttributeSet att = printer.getAttributes ( ) ; voor ( Kenmerk a : att.toArray ( ) ) { < br > String attributeName ; String attributeValue ; attributeName = a.getName ( ) ; attributeValue = att.get ( a.getClass ( ) ) . toString ( ) ; System.out.println ( attributeName + " : " + attributeValue ) ; } Dit grijpt de standaard printer op het systeem en al zijn attributen . Vervolgens gaat het door elk attribuut en drukt de naam en de waarde attribuut , inclusief de beschikbaarheid. Met mijn eigen printer , de volgende is de output : printer - naam : EPSON8EB46B kleur - ondersteund : ondersteund printer - is - aanvaarding - banen : accepteren - banen wachtrij - werk - count : 1 Dit geeft aan dat mijn printer is een Epson , het ondersteunt kleur , is het aanvaarden van nieuwe banen , en heeft momenteel een baan wachtrij voor afdrukken < br . >
|