⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 printerdialog.java

📁 记事本
💻 JAVA
字号:
package com.niit.NotaPad;
import java.awt.*;
import java.awt.print.*; 
import javax.swing.*;

class PrinterDialog extends Dialog implements Printable
{ 
	private PrinterJob pj=null;
	private PageFormat upf=null;
	private JTextArea text;
	public PrinterDialog (MenuFrame menuFrame,JTextArea text)
	{
		super(menuFrame);
		this.text=text; 
	}
	public void setupPage()
	{
		if(pj==null)
		{
			pj=PrinterJob.getPrinterJob();	
		}	
		if(upf==null)
		{
			upf=pj.defaultPage();	
		}
		upf=pj.pageDialog(upf);
	}
	
	public void priteFile()
	{
		try{
				if(pj==null)
				{
					pj=PrinterJob.getPrinterJob();	
				}
				if(pj.printDialog())
				{
					if(upf==null)
					{
						pj.setPrintable(this);	
					}	else
					{
						pj.setPrintable(this,upf);	
					}
					
				}
				pj.print(); 
			}catch(PrinterException e)
			{
				 
			}
	}
	public int print(Graphics g, PageFormat ppf, int pageIndex)throws PrinterException 
	{
		 int pageLen=(int)ppf.getImageableHeight();
		 if(pageIndex*pageLen>text.getHeight())
		 {
		 			return NO_SUCH_PAGE;
		 	}
		 	Graphics2D g2=(Graphics2D)g;
		 	int pageShift=pageIndex*pageLen;
		 	g2.translate(ppf.getImageableX(),ppf.getImageableY()-pageShift );
		 	boolean dblbuff=text.isDoubleBuffered();
		 	if(dblbuff)
		 	{
		 		text.setDoubleBuffered(false);	
		 		
		 	}
		 	text.paint(g2);
		 	text.setDoubleBuffered(dblbuff);
		 	
		return PAGE_EXISTS;
	}
	
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -