📄 printbutton.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.awt.print.*;
class MyButton extends Button implements Printable {
public MyButton() {
super("MyButton");
}
public void paint(Graphics g) {
Font f = new Font("Monospaced",Font.PLAIN,12);
g.setFont (f);
//Using "g" render anything you want.
//Get the button's location, width, and height
int X = (int)this.getLocation().getX();
int Y = (int)this.getLocation().getY();
int W = (int)this.getSize().getWidth();
int H = (int)this.getSize().getHeight();
//Draw the button shape
g.drawRect(X, Y, W, H);
//Draw the button label
//For simplicity code to center the label inside the
//button shape is replaced by integer offset values
g.drawString(this.getLabel(), X+3, Y+15);
}
public int print(Graphics g, PageFormat pf, int pi) throws PrinterException {
if (pi >= 1) {
return Printable.NO_SUCH_PAGE;
}
Graphics2D g2 = (Graphics2D) g;
g2.translate(pf.getImageableX(), pf.getImageableY());
g2.setColor(Color.black);
paint(g2);
return Printable.PAGE_EXISTS;
}
}
public class printbutton extends Panel implements ActionListener {
public printbutton() {
setBackground(Color.white);
MyButton b = new MyButton();
b.addActionListener(this);
add(b);
}
public void actionPerformed(ActionEvent e) {
PrinterJob printJob = PrinterJob.getPrinterJob();
printJob.setPrintable((MyButton) e.getSource());
try { printJob.print(); } catch (Exception PrintException) { }
}
public static void main(String s[]) {
WindowListener l = new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.exit(0);}
};
Frame f = new Frame("printbutton");
f.addWindowListener(l);
f.add("Center", new printbutton());
f.pack();
f.setSize(new Dimension(400,300));
f.show();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -