Delphi 呼叫BarTender列印條碼
阿新 • • 發佈:2019-02-20
方法一:
使用Delphi呼叫BarTender列印條碼,在網上搜索了一下,很多都是介紹匯入ActiveX元件,其實完全沒有必要。用OLE控制元件完全可以解決。但需要注意所使用的BarTender必須是正式的安裝版(PS:破解版好像也可以),試用版和綠色版都不可以二次開發。
下面是測試通過的列子:(需要引用ComObj.Pas檔案)
直接寫程式碼:
procedure TForm1.DoPrintStr(_BarCode, _Text: string);
varbarApp: Variant;
barFormat: Variant;
vPath: string;
begin
try
vPath := ExtractFilePath(Forms.Application.ExeName);
// 列印第一頁
if not FileExists(vPath+'Test1.btw') then
begin
showMessage('列印標籤不存在,請檢查!');
Exit;
end;
barApp := CreateOleObject('BarTender.Application.10');
barApp.Visible := False;
barFormat := barApp.formats.open(vPath+'Test1.btw', true, '');
// 'TEXT'、'BARCODE'均為box.btw標籤紙上的控制元件名稱
barFormat.SetNamedSubStringValue('Text1', _Text);
barFormat.SetNamedSubStringValue('BarCode1',_BarCode);
barFormat.printout(False,False);
barFormat.close(1);
barApp.quit(1);
except
on E: Exception do
begin
ShowMessage(E.ClassName + E.Message);
Exit;
end;
end;
end;
方法二:(安裝控制元件方式)
附加說明:
Bartender上的設定:(新版本要設定"具名資料來源" 來交換資料)