?? accountreceivableprintpane.java
字號:
package print;import javax.swing.*;import java.awt.*;import java.awt.print.*;import java.util.*;public class AccountReceivablePrintPane extends JPanel{ final static Color fg = Color.black; //創建字體 Font font16 = new Font("宋體", Font.BOLD, 16); Font font11 = new Font("宋體", Font.PLAIN, 11); //創建往來賬套數組 static String[] currentAccountLedger = {"", "", "", "", "", "", "", "", "", "0", ""}; //測試數組 //static String[] currentAccountLedger = {"20040500001", "st20040500005", "0", "5632", // "客戶1", "jack", "jack", "2004-5-5 15:00:00.0", "2004-5-5 15:00:00.0", "0", "備注"}; //頁面左邊的空白 int pageLeftMargin = 88; //與左邊的距離 int x = 0; //與項部的距離 int y = 0; //行寬 int lineHeight = 14; //行間距 int lineDistant = 14; //創建完成狀態數組 String[] onProcesses = {"進行", "撤消", "完成"}; //重新繪畫 public void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2 = (Graphics2D) g; //設置畫筆顏色 g2.setPaint(fg); drawPages(g2); } public AccountReceivablePrintPane() { this.setBackground(Color.white); } /** 打印頁面的方法 */ public void drawPages(Graphics2D g2){ drawFirstPage(g2); } public void drawFirstPage(Graphics2D g2){ //設置字體 g2.setFont(font16); //顯示應收票據 g2.drawString("應收票據", 273, 80);/*顯示第1行的內容*/ g2.setFont(font11); x = pageLeftMargin; //第一行與頂部的距離 y = 114; //顯示第1列內容 g2.drawString("票據編號:", x, y); x = 148; //顯示第2列內容 g2.drawString(currentAccountLedger[0], x, y); x = 228; //顯示第3列內容 g2.drawString("相關聯的票據標識:", x, y); x = 325; //顯示第4列內容 g2.drawString(currentAccountLedger[1], x, y);/*顯示第2行的內容*/ x = pageLeftMargin; y += lineHeight + lineDistant; //顯示第1列內容 g2.drawString("客戶名字:", x, y); x = 148; //顯示第2列內容 g2.drawString(currentAccountLedger[4], x, y); x = 228; //顯示第3列內容 g2.drawString("開票據用戶:", x, y); x = 295; //顯示第4列內容 g2.drawString(currentAccountLedger[5], x, y); x = 379; //顯示第5列內容 g2.drawString("現金管理員:", x, y); x = 445; //顯示第6列內容 g2.drawString(currentAccountLedger[6], x, y);/*顯示第3行的內容*/ x = pageLeftMargin; y += lineHeight + lineDistant; //顯示第1列內容 g2.drawString("金額:", x, y); x = 148; //顯示第2列內容 g2.drawString(currentAccountLedger[3], x, y);/*顯示第4行的內容*/ x = pageLeftMargin; y += lineHeight + lineDistant; //顯示第1列內容 g2.drawString("開票據日期:", x, y); x = 148; //顯示第2列內容 g2.drawString(currentAccountLedger[7], x, y); x = 325; //顯示第3列內容 g2.drawString("收款日期:", x, y); x = 379; //顯示第4列內容 g2.drawString(currentAccountLedger[8], x, y);/*顯示第5行的內容*/ x = pageLeftMargin; y += lineHeight + lineDistant; //顯示第1列內容 g2.drawString("完成狀態:", x, y); x = 148; //顯示第2列內容 g2.drawString(onProcesses[Integer.parseInt(currentAccountLedger[9])] , x, y);/*顯示第6行的內容*/ x = pageLeftMargin; y += lineHeight + lineDistant; //顯示第1列內容 g2.drawString("備注:", x, y);/*顯示第7行的內容*/ x = pageLeftMargin + 22; y += lineHeight + lineDistant; //顯示第1列內容 g2.drawString(currentAccountLedger[10], x, y);/*顯示頁尾的內容*/ x = 279; y = 789; //顯示頁碼 g2.drawString("第 1 頁", x, y); } public String[] getCurrentAccountLedger() { return currentAccountLedger; } public void setCurrentAccountLedger(String[] currentAccountLedger) { this.currentAccountLedger = currentAccountLedger; }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -