當前位置: 首頁>>代碼示例>>Java>>正文


Java PrintRequestAttributeSet.toArray方法代碼示例

本文整理匯總了Java中javax.print.attribute.PrintRequestAttributeSet.toArray方法的典型用法代碼示例。如果您正苦於以下問題:Java PrintRequestAttributeSet.toArray方法的具體用法?Java PrintRequestAttributeSet.toArray怎麽用?Java PrintRequestAttributeSet.toArray使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在javax.print.attribute.PrintRequestAttributeSet的用法示例。


在下文中一共展示了PrintRequestAttributeSet.toArray方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: setAttributes

import javax.print.attribute.PrintRequestAttributeSet; //導入方法依賴的package包/類
/**
 * copy the attributes to the native print job
 * Note that this method, and hence the re-initialisation
 * of the GDI values is done on each entry to the print dialog since
 * an app could redisplay the print dialog for the same job and
 * 1) the application may have changed attribute settings
 * 2) the application may have changed the printer.
 * In the event that the user changes the printer using the
  dialog, then it is up to GDI to report back all changed values.
 */
@Override
protected void setAttributes(PrintRequestAttributeSet attributes)
    throws PrinterException {

    // initialize attribute values
    initAttributeMembers();
    super.setAttributes(attributes);

    mAttCopies = getCopiesInt();
    mDestination = destinationAttr;

    if (attributes == null) {
        return; // now always use attributes, so this shouldn't happen.
    }
    Attribute[] attrs = attributes.toArray();
    for (int i=0; i< attrs.length; i++) {
        Attribute attr = attrs[i];
        try {
             if (attr.getCategory() == Sides.class) {
                setSidesAttrib(attr);
            }
            else if (attr.getCategory() == Chromaticity.class) {
                setColorAttrib(attr);
            }
            else if (attr.getCategory() == PrinterResolution.class) {
                setResolutionAttrib(attr);
            }
            else if (attr.getCategory() == PrintQuality.class) {
                setQualityAttrib(attr);
            }
            else if (attr.getCategory() == SheetCollate.class) {
                setCollateAttrib(attr);
            }  else if (attr.getCategory() == Media.class ||
                        attr.getCategory() == SunAlternateMedia.class) {
                /* SunAlternateMedia is used if its a tray, and
                 * any Media that is specified is not a tray.
                 */
                if (attr.getCategory() == SunAlternateMedia.class) {
                    Media media = (Media)attributes.get(Media.class);
                    if (media == null ||
                        !(media instanceof MediaTray)) {
                        attr = ((SunAlternateMedia)attr).getMedia();
                    }
                }
                if (attr instanceof MediaSizeName) {
                    setWin32MediaAttrib(attr);
                }
                if (attr instanceof MediaTray) {
                    setMediaTrayAttrib(attr);
                }
            }

        } catch (ClassCastException e) {
        }
    }
}
 
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:67,代碼來源:WPrinterJob.java

示例2: setAttributes

import javax.print.attribute.PrintRequestAttributeSet; //導入方法依賴的package包/類
/**
 * copy the attributes to the native print job
 * Note that this method, and hence the re-initialisation
 * of the GDI values is done on each entry to the print dialog since
 * an app could redisplay the print dialog for the same job and
 * 1) the application may have changed attribute settings
 * 2) the application may have changed the printer.
 * In the event that the user changes the printer using the
  dialog, then it is up to GDI to report back all changed values.
 */
@Override
protected void setAttributes(PrintRequestAttributeSet attributes)
    throws PrinterException {

    // initialize attribute values
    initAttributeMembers();
    super.setAttributes(attributes);

    mAttCopies = getCopiesInt();
    mDestination = destinationAttr;

    if (attributes == null) {
        return; // now always use attributes, so this shouldn't happen.
    }
    Attribute[] attrs = attributes.toArray();
    for (int i=0; i< attrs.length; i++) {
        Attribute attr = attrs[i];
        try {
             if (attr.getCategory() == Sides.class) {
                setSidesAttrib(attr);
            }
            else if (attr.getCategory() == Chromaticity.class) {
                setColorAttrib(attr);
            }
            else if (attr.getCategory() == PrinterResolution.class) {
                if (myService.isAttributeValueSupported(attr, null, null)) {
                    setResolutionAttrib(attr);
                }
            }
            else if (attr.getCategory() == PrintQuality.class) {
                setQualityAttrib(attr);
            }
            else if (attr.getCategory() == SheetCollate.class) {
                setCollateAttrib(attr);
            }  else if (attr.getCategory() == Media.class ||
                        attr.getCategory() == SunAlternateMedia.class) {
                /* SunAlternateMedia is used if its a tray, and
                 * any Media that is specified is not a tray.
                 */
                if (attr.getCategory() == SunAlternateMedia.class) {
                    Media media = (Media)attributes.get(Media.class);
                    if (media == null ||
                        !(media instanceof MediaTray)) {
                        attr = ((SunAlternateMedia)attr).getMedia();
                    }
                }
                if (attr instanceof MediaSizeName) {
                    setWin32MediaAttrib(attr);
                }
                if (attr instanceof MediaTray) {
                    setMediaTrayAttrib(attr);
                }
            }

        } catch (ClassCastException e) {
        }
    }
}
 
開發者ID:AdoptOpenJDK,項目名稱:openjdk-jdk10,代碼行數:69,代碼來源:WPrinterJob.java


注:本文中的javax.print.attribute.PrintRequestAttributeSet.toArray方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。