我想使用java在java中生成多个条形码。 场景如下:
我有一个名为副本的文本字段,我想使用烧烤库并根据给定的数字生成条形码, 乌伊 因此,如果我在文本字段中输入3,它将生成3个增加数字的条形码。对于三个条形码,数字将增加(例如,1,2,3)。
任何人都可以帮助我吗?非常感谢您的帮助
这是我生成单条形码的代码:
new File("C:\\Generated Barcodes").mkdir();
new File("D:\\Back-Up Generated Barcodes").mkdir();
//Get 128B Barcode instance from the Factory
Barcode barcode = null;
try {
barcode = BarcodeFactory.createCode128B(res.getText());
} catch (BarcodeException ex) {
Logger.getLogger(Barcode_IT.class.getName()).log(Level.SEVERE, null, ex);
}
barcode.setBarHeight(40);
barcode.setBarWidth(2);
generate2.setEnabled(false);
save.setEnabled(true);
Edit.setEnabled(true);
File imgFile = new File("C://Generated Barcodes//"+res2.getText()+"_"+res.getText()+".png");
try {
//Write the bar code to PNG file
BarcodeImageHandler.savePNG(barcode, imgFile);
} catch (OutputException ex) {
Logger.getLogger(Barcode_IT.class.getName()).log(Level.SEVERE, null, ex);
}
ImageIcon imgThisImg = new ImageIcon("C://Generated Barcodes//"+res2.getText()+"_"+res.getText()+".png");
lres.setIcon(imgThisImg);
file.setText(res2.getText()+"_"+res.getText()+".png");
}
}catch(Exception e){
JOptionPane.showMessageDialog(Jframe, "Something Went Wrong!",
"Inane warning", JOptionPane.ERROR_MESSAGE);
}
答案 0 :(得分:0)
你知道for循环吗?使用循环来生成多个条形码。 像这样
//Get 128B Barcode instance from the Factory
Barcode barcode = null;
int code = Integer.parseInt(res.getText());
for (int i = 1; i <= code; i++) {
try {
barcode = BarcodeFactory.createCode128B(i + "");
} catch (BarcodeException ex) {
Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
}
barcode.setBarHeight(40);
barcode.setBarWidth(2);
File imgFile = new File("C://Generated Barcodes//" + res2.getText() + "_" + i + ".png");
System.out.println(code);
try {
//Write the bar code to PNG file
BarcodeImageHandler.savePNG(barcode, imgFile);
} catch (OutputException ex) {
ex.printStackTrace();
}
ImageIcon imgThisImg = new ImageIcon("C://Generated Barcodes//" + res2.getText() + "_" + i + ".png");
lres.setIcon(imgThisImg);
}