Delphi结合LabelView进行条码打印

   使用LabelView软件的COM服务来对LabelView进行控制,即传递数据到LabelView的条码对象上,使我们可以自定义需要打印的条码数据。

  首先,导入类型库。在[Import Type Library]中选择LabelView Ole Automation server TypeLib V6.0创建单元即可。  生成单元LabelView_TLB.pas,单元中包含了很多的接口,ILabelApplication,ILabelDocument,ILabelField,ILabelFields,IlabelPrinter,通过这些接口就可以进行进程间的通信了,也就可以控制LabelView文件中的对象的操作了。

    研究了半天,还是要认真学习一下COM了。

以下是对3.lbl文件中的条形码进行赋值代码。

uses
  LabelView_TLB;


var
  Form1: TForm1;
  LabelApp: ILabelApplication;
  LabelDoc: ILabelDocument;
  LabelFields: ILabelFields;
  LabelField: ILabelField;
implementation

{$R *.dfm}

procedure TForm1.btn1Click(Sender: TObject);
var
  iDIsp: IDispatch;
begin
  //应用程序接口实现
  LabelApp := CoLabelApplication.Create;
  LabelApp.Visible := True;
  iDIsp := LabelApp.ActiveDocument;
  if iDIsp 
<>  nil then
  begin
    //获取文档接口
    iDIsp.QueryInterface(ILabelDocument, LabelDoc);
    LabelDoc.Open('3.lbl', false);  //打开文件
    iDIsp := LabelDoc.LabelFields;  //获取字段列表接口
    if iDIsp 
<>  nil then             
      iDIsp.QueryInterface(DIID_ILabelFields, LabelFields);
    iDIsp := LabelFields.Item('BARCODE1');     
    if iDIsp 
<>  nil then
      iDIsp.QueryInterface(DIID_ILabelField, LabelField);      //获取字段接口
    LabelField.Value := '123';      //通过接口进行设置
    //LabelDoc.LabelSetup;          //打印设置
    //打印条码,数量
    //LabelDoc.PrintLabel(1, 0, 0, 0, 0, 0, 0); //打印,数量为1
  end;
end;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值