99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

Java生成的代碼 java 代碼生成器 開源

用Java代碼生成打印收據

首先 來看看效果 如下圖

為吉林等地區用戶提供了全套網頁設計制作服務,及吉林網站建設行業解決方案。主營業務為成都網站制作、做網站、吉林網站設計,以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業、用心的態度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

代碼如下

PrintTest java

import java awt BasicStroke;

import java awt Color;

import java awt Font;

import java awt Graphics;

import java awt Graphics D;

import java awt print Book;

import java awt print PageFormat;

import java awt print Paper;

import java awt print Printable;

import java awt print PrinterException;

import java awt print PrinterJob;

import java text SimpleDateFormat;

import java util Date;

import snjp model RentDetail;

import snjp parameter RentRecordParameter;

public class PrintTest implements Printable

{

private String roomID;

private Date printDate;

private Integer rentType;

private Float waterFee;

private Float electricityFee;

private Float rent;

private String remark;

private static int RECEIPT_NO = ;

public PrintTest()

{

}

public PrintTest printTest;

public PrintTest(RentRecordParameter prentRecord RentDetail prentDetail)

{

this roomID = prentRecord getRoomId()+ 房間 ;

this printDate = prentRecord getRegisterDate();

this rentType = prentRecord getRentType();

this waterFee = prentDetail getWaterBill();

this electricityFee = prentDetail getElectricityBill();

this rent = prentDetail getRent();

this remark = prentDetail getRemark();

}

/** */

/**

* @param Graphic指明打印的圖形環境

* @param PageFormat指明打印頁格式(頁面大小以點為計量單位 點為 英才的 / 英寸為 毫米 A 紙大致為 × 點)

* @param pageIndex指明頁號

**/

public int print(Graphics graphics PageFormat pf int pageIndex)

throws PrinterException

{

//print string

String receiptTitle = 收款收據 ;

String content = 今收到 ;

String feeItem = null;

Float rentTotal = f;

String content = 總計人民幣(大寫) ;

//收款的內容(根據租賃類型 只有 房租 房租 水費 電費 兩種值)

switch(this rentType)

{

case :

feeItem = 房租 押金 ;

rentTotal=this rent;

break;

case :

feeItem = 房租 押金 水費 電費 ;

rentTotal=this rent+this electricityFee+this waterFee;

break;

default:

feeItem = 未知收費項目 ;

}

//轉換成Graphics D

Graphics D graphics D = (Graphics D) graphics;

//設置打印顏色為黑色

graphics D setColor(Color black);

//打印起點坐標x=

double x = pf getImageableX();

double y = pf getImageableY();

System out println( 打印起點坐標值是{ +x+ +y+ } );

switch (pageIndex)

{

case :

//設置打印字體(字體名稱 樣式和點大?。ㄗ煮w名稱可以是物理或者邏輯名稱)

//Java平臺所定義的五種字體系列 Serif SansSerif Monospaced Dialog 和 DialogInput

Font font = new Font( 新宋體 Font TRUETYPE_FONT );

graphics D setFont(font);//設置字體

BasicStroke?? basicStroke=new?? BasicStroke( f);

float[] dash = { f };

//設置打印線的屬性

// 線寬; ; ; 空白的寬度; 虛線的寬度; 偏移量

//??????????????? graphics D setStroke(new BasicStroke( f

//??????????????????????????????? BasicStroke CAP_BUTT BasicStroke JOIN_MITER

//??????????????????????????????? f dash f));

//graphics D setStroke(new BasicStroke( f));

graphics D setStroke(basicStroke);//設置線寬

float height = font getSize D();//字體高度

System out println( 字體高度是 +height);

//繪制收據標題

graphics D drawString(receiptTitle (float) y + * height);

//繪制收據編號

String receiptNo = String valueOf(RECEIPT_NO);

graphics D drawString( No : +GlobalMethod get String(receiptNo ) (float)x* (float) y + * height);

//繪制打印時間

SimpleDateFormat myDateFormat = new SimpleDateFormat( yyyy年MM月dd日 );

graphics D drawString(myDateFormat format(printDate) (float)x* (float) y + * height);

//繪制收據標題下面的第一條橫線

graphics D drawLine(

(int) (y + * height+ )

(int) (y + * height+ )

);

//繪制收據標題下面的第二條橫線

graphics D drawLine(

(int) (y + * height+ )

(int) (y + * height+ )

);

//正文 ——今收到

graphics D drawString(content (float) x* (float) y + * height);

//收費項目名稱

graphics D drawString(this roomID+feeItem (float) x* (float) y + * height);

//繪制正文 下劃線

graphics D drawLine(

(int)x*

(int) (y + * height+ )

(int)x+

(int) (y + * height+ )

);

//人民幣(大寫)

graphics D drawString(content +Money NumToRMBStr(rentTotal) (float) x* (float) y + * height);

//繪制人民幣(大寫)下劃線

graphics D drawLine(

(int)x*

(int) (y + * height+ )

(int)x+

(int) (y + * height+ )

);

//(小寫)

graphics D drawString( (小寫) +rentTotal+ 元 (float) x* (float) y + * height);

//繪制(小寫)下劃線

graphics D drawLine(

(int)x*

(int) (y + * height+ )

(int)x+

(int) (y + * height+ )

);

//附注

graphics D drawString( 附注: +this remark (float) x* (float) y + * height);

//繪制附注下劃線

graphics D drawLine(

(int)x* +

(int) (y + * height+ )

(int)x+

(int) (y + * height+ )

);

// 簽字(收款人)

graphics D drawString( 簽字(收款人) (float) x* + (float) y + * height);

//簽字(收款人)下劃線

graphics D drawLine(

(int)x*

(int) (y + * height+ )

(int)x+

(int) (y + * height+ )

);

return PAGE_EXISTS;

default:

RECEIPT_NO=RECEIPT_NO ;

return NO_SUCH_PAGE;

}

}

//方法調用

public? void printReceipt(PrintTest printTest){

//通俗理解就是書 文檔

Book book = new Book();

//設置成豎打

PageFormat pf = new PageFormat();

pf setOrientation(PageFormat PORTRAIT);

//通過Paper設置頁面的空白邊距和可打印區域 必須與實際打印紙張大小相符

Paper p = new Paper();

p setSize( );//紙張大小

p setImageableArea( );//A ( X )設置打印區域 其實 應該是 因為A 紙的默認X Y邊距是

pf setPaper(p);

//把 PageFormat 和 Printable 添加到書中 組成一個頁面

book append(printTest pf);

//獲取打印服務對象

PrinterJob job = PrinterJob getPrinterJob();

//設置打印類

job setPageable(book);

try

{

//可以用printDialog顯示打印對話框 在用戶確認后打印 也可以直接打印

//??????????? boolean isShowing=job printDialog();

//??????????? if(isShowing)

//??????????? {

//????????????? System out println(this printDate+ ************* );

RECEIPT_NO=RECEIPT_NO+ ;

job print();

//??????????? }

}

catch (PrinterException e)

{

e printStackTrace();

}

}

public static void main(String[] args)

{

//??? 通俗理解就是書 文檔

Book book = new Book();

//??? 設置成豎打

PageFormat pf = new PageFormat();

pf setOrientation(PageFormat PORTRAIT);

//??? 通過Paper設置頁面的空白邊距和可打印區域 必須與實際打印紙張大小相符

Paper p = new Paper();

p setSize( );//紙張大小

p setImageableArea( );//A ( X )設置打印區域 其實 應該是 因為A 紙的默認X Y邊距是

pf setPaper(p);

//??? 把 PageFormat 和 Printable 添加到書中 組成一個頁面

book append(new PrintTest() pf);

//獲取打印服務對象

PrinterJob job = PrinterJob getPrinterJob();

// 設置打印類

job setPageable(book);

try

{

//可以用printDialog顯示打印對話框 在用戶確認后打印 也可以直接打印

//boolean a=job printDialog();

//if(a)

//{

job print();

//}

}

catch (PrinterException e)

{

e printStackTrace();

}

}

lishixinzhi/Article/program/Java/hx/201311/25778

Java動態生成代碼

可以的,我說說大概思路,很簡單,你自己具體實現吧,把代碼寫給你沒意義的:

1.將你這段字符串輸出到一個文件里,用Java類文件的方式命名。

2.調用外部javac命令將該文件編譯。

3.用類加載器(ClassLoad)動態加載新的class文件并用Class.forName()注冊該類,然后就可以正常使用了。

上面的每一步都能在baidu中找到實現方法,自己發揮吧。

如何查看C++和java生成的匯編代碼

下面有幾種方法:

方法一:生成asm文件

1)VS2005:

項目 ---》屬性 ---》 配置屬性 ---》 c/c++ ---》 輸出文件 ---》 右邊內容項:匯編輸出 ---》帶源代碼的程序集(/FAs )。

這樣在項目里面生成后綴為*.asm 的文件。里面還有注釋,有利于分析。

要得到匯編代碼與源代碼的對應,設置選項:

2)VC6.0:

project settings:

--- C++

--- category == Listing files

---Listing file type == Assembly with source code

方法二:使用反匯編方式(推薦使用這種方法,在debug的時候使用)

1)VC6.0在進行斷點調試的時候,進行以下步驟:

點擊“查看”

“調試窗口”

“Disassably”

即可查看到反匯編的結果

2)VS2005在進行斷點調試的時候,進行以下步驟:

點擊“調試”

“窗口”

“反匯編”

查看java就直接用javap -v 類文件.class 即可。詳細內容可以參考 jvm虛擬機

網站名稱:Java生成的代碼 java 代碼生成器 開源
當前路徑:http://www.yijiale78.com/article26/ddjgejg.html

成都網站建設公司_創新互聯,為您提供全網營銷推廣、域名注冊、網站維護、定制開發微信小程序、營銷型網站建設

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站托管運營