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

📄 stockreturnorderprintpane.java

📁 一个使用java 写的进销存代码 使用了ejb 等技术 是学习j2ee的好
💻 JAVA
字号:
package print;import javax.swing.*;import java.awt.*;import java.awt.print.*;import java.util.*;public class StockReturnOrderPrintPane  extends JPanel{  final static Color fg = Color.black;  //创建字体  Font font16 = new Font("宋体", Font.BOLD, 16);  Font font11 = new Font("宋体", Font.PLAIN, 11);  //是否第1页变量  static boolean isFirstPage = true;  //创建退货单数组  static String[] stockLedger = {"", "", "", "", "", "", "", "", "", "", "", "0", ""};  //创建退货单明细账数组  static String[][] stockSubLedger = new String[0][5];  //创建页码变量  static int printPage = 0;  //页面左边的空白  int pageLeftMargin = 88;  //与左边的距离  int x = 0;  //与项部的距离  int y = 0;  //行宽  int lineHeight = 14;  //行间距  int lineDistant = 14;  //表格的行高  int tableLineHeight = 17;  //表格的总高度  int tableHeight = 0;  //创建完成状态数组  String[] onProcesses = {"进行", "撤消", "完成"};  //重新绘画  public void paintComponent(Graphics g) {    super.paintComponent(g);    Graphics2D g2 = (Graphics2D) g;    //设置画笔颜色    g2.setPaint(fg);    drawPages(g2);  }  public StockReturnOrderPrintPane() {    this.setBackground(Color.white);  }  /** 打印页面的方法 */  public void drawPages(Graphics2D g2){    if(isFirstPage){      drawFirstPage(g2);    }else{      drawOtherPages(g2);    }  }  /** 打印第1页的方法 */  public void drawFirstPage(Graphics2D g2){    //取得表格的高度    tableHeight = tableLineHeight * (stockSubLedger.length + 1);    //设置字体    g2.setFont(font16);    //显示退货单    g2.drawString("退货单", 273, 80);/*显示第1行的内容*/    g2.setFont(font11);    x = pageLeftMargin;    //第一行与顶部的距离    y = 114;    //显示第1列内容    g2.drawString("单据编号:", x, y);    x += 51;    //显示第2列内容    g2.drawString(stockLedger[0], x, y);    x += 80;    //显示第3列内容    g2.drawString("供应商:", x, y);    x += 51;    //显示第4列内容    g2.drawString(stockLedger[2], x, y);/*显示第2行的内容*/    x = pageLeftMargin;    y += lineHeight + lineDistant;    //显示第1列内容    g2.drawString("请购员:", x, y);    x += 51;    //显示第2列内容    g2.drawString(stockLedger[3], x, y);    x += 80;    //显示第3列内容    g2.drawString("订购员:", x, y);    x += 51;    //显示第4列内容    g2.drawString(stockLedger[4], x, y);    x += 51;    //显示第5列内容    g2.drawString("验收员:", x, y);    x += 43;    //显示第6列内容    g2.drawString(stockLedger[5], x, y);    x += 51;    //显示第7列内容    g2.drawString("现金管理员:", x, y);    x += 63;    //显示第8列内容    g2.drawString(stockLedger[6], x, y);/*显示第3行的内容*/    x = pageLeftMargin;    y += lineHeight + lineDistant;    //显示第1列内容    g2.drawString("退货地址:", x, y);    x += 51;    //显示第2列内容    g2.drawString(stockLedger[7], x, y);/*显示第4行的内容*/    x = pageLeftMargin;    y += lineHeight + lineDistant;    //显示第1列内容    g2.drawString("仓库名字:", x, y);    x += 51;    //显示第2列内容    g2.drawString(stockLedger[8], x, y);/*显示第5行的内容*/    x = pageLeftMargin;    y += lineHeight + lineDistant;    //显示第1列内容    g2.drawString("退货单日期:", x, y);    x += 60;    //显示第2列内容    g2.drawString(stockLedger[9], x, y);    x += 80 + 60;    //显示第3列内容    g2.drawString("退货日期:", x, y);    x += 51;    //显示第4列内容    g2.drawString(stockLedger[10], x, y);/*显示第6行的内容*/    x = pageLeftMargin;    y += lineHeight + lineDistant;    //显示第1列内容    g2.drawString("完成状态:", x, y);    x += 51;    //显示第2列内容    g2.drawString(onProcesses[Integer.parseInt(stockLedger[11])] , x, y);/*显示第7行的内容*/    x = pageLeftMargin;    y += lineHeight + lineDistant;    //显示第1列内容    g2.drawString("备注:", x, y);/*显示第8行的内容*/    x = pageLeftMargin + 22;    y += lineHeight + lineDistant;    //显示第1列内容    g2.drawString(stockLedger[12], x, y);/*显示退货单明细账字符串*/    x = pageLeftMargin;    y += 48;    //显示第1列内容    g2.drawString("退货单明细账:", x, y);/*显示表格的第一行的线*/    x = pageLeftMargin;    y += lineDistant;    //画表格的横线    g2.drawLine(x, y, x + 440, y);    //画表格的第1条竖线    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第2条竖线(商品条形码列)    x += 123;    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第3条竖线(退货价列)    x += 83;    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第4条竖线(数量列)    x += 68;    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第5条竖线(金额列)    x += 83;    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第6条竖线(有效期列)    x += 83;    g2.drawLine(x, y, x, y + tableHeight);/*显示表格的标题*/    x = pageLeftMargin;    y += tableLineHeight;    //画表格的横线    g2.drawLine(x, y, x + 440, y);    x += 35;    //显示第1列内容    g2.drawString("商品条形码", x, y - 4);    x += 115;    //显示第2列内容    g2.drawString("退货价", x, y - 4);    x += 80;    //显示第3列内容    g2.drawString("数量", x, y - 4);    x += 75;    //显示第4列内容    g2.drawString("金额", x, y - 4);    x += 75;    //显示第5列内容    g2.drawString("有效期", x, y - 4);/*显示表格的内容*/    for(int i = 0; i < stockSubLedger.length; i++){      x = pageLeftMargin;      y += tableLineHeight;      //画表格的横线      g2.drawLine(x, y, x + 440, y);      x += 5;      //显示第1列内容      g2.drawString(stockSubLedger[i][0], x, y - 4);      x += 125;      //显示第2列内容      g2.drawString(stockSubLedger[i][1], x, y - 4);      x += 80;      //显示第3列内容      g2.drawString(stockSubLedger[i][2], x, y - 4);      x += 70;      //显示第4列内容      g2.drawString(stockSubLedger[i][3], x, y - 4);      x += 80;      //显示第5列内容      g2.drawString(stockSubLedger[i][4], x, y - 4);    }/*显示页尾的内容*/    x = 279;    y = 789;    //显示页码    g2.drawString("第 1 页", x, y);  }  /** 打印其它页面的方法 */  public void drawOtherPages(Graphics2D g2){    //设置字体    g2.setFont(font11);    //取得表格的高度    tableHeight = tableLineHeight * (stockSubLedger.length + 1);/*显示退货单明细账字符串*/    x = pageLeftMargin;    y = 75;    //显示第1列内容    g2.drawString("退货单明细账(接上页):", x, y);/*显示表格的第一行的线*/    x = pageLeftMargin;    y += lineDistant;    //画表格的横线    g2.drawLine(x, y, x + 440, y);    //画表格的第1条竖线    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第2条竖线(商品条形码列)    x += 123;    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第3条竖线(退货价列)    x += 83;    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第4条竖线(数量列)    x += 68;    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第5条竖线(金额列)    x += 83;    g2.drawLine(x, y, x, y + tableHeight);    //画表格的第6条竖线(有效期列)    x += 83;    g2.drawLine(x, y, x, y + tableHeight);    /*显示表格的标题*/    x = pageLeftMargin;    y += tableLineHeight;    //画表格的横线    g2.drawLine(x, y, x + 440, y);    x += 35;    //显示第1列内容    g2.drawString("商品条形码", x, y - 4);    x += 115;    //显示第2列内容    g2.drawString("退货价", x, y - 4);    x += 80;    //显示第3列内容    g2.drawString("数量", x, y - 4);    x += 75;    //显示第4列内容    g2.drawString("金额", x, y - 4);    x += 75;    //显示第5列内容    g2.drawString("有效期", x, y - 4);/*显示表格的内容*/    for (int i = 0; i < stockSubLedger.length; i++) {      x = pageLeftMargin;      y += tableLineHeight;      //画表格的横线      g2.drawLine(x, y, x + 440, y);      x += 5;      //显示第1列内容      g2.drawString(stockSubLedger[i][0], x, y - 4);      x += 125;      //显示第2列内容      g2.drawString(stockSubLedger[i][1], x, y - 4);      x += 80;      //显示第3列内容      g2.drawString(stockSubLedger[i][2], x, y - 4);      x += 70;      //显示第4列内容      g2.drawString(stockSubLedger[i][3], x, y - 4);      x += 80;      //显示第5列内容      g2.drawString(stockSubLedger[i][4], x, y - 4);    }/*显示页尾的内容*/    x = 279;    y = 789;    g2.drawString("第 " + printPage + " 页", x, y);  }  public boolean isIsFirstPage() {    return isFirstPage;  }  public void setIsFirstPage(boolean isFirstPage) {    this.isFirstPage = isFirstPage;  }  public String[] getStockLedger() {    return stockLedger;  }  public void setStockLedger(String[] stockLedger) {    this.stockLedger = stockLedger;  }  public String[][] getStockSubLedger() {    return stockSubLedger;  }  public void setStockSubLedger(String[][] stockSubLedger) {    this.stockSubLedger = stockSubLedger;  }  public int getPrintPage() {    return printPage;  }  public void setPrintPage(int pirntPage) {    this.printPage = pirntPage;  }}

⌨️ 快捷键说明

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