Delphi调用BarTender打印条码标签简明开发教程

简介: Delphi调用BarTender打印条码标签简明开发教程

摘要:本文就简单使用Delphi调用BarTender之ActiveX组件打印条码的开发过程做介绍.

1. 前言

最近一个项目需要在扫描条码后按固定的格式打印。条码打印软件客户习惯使用的是BarTender,为了保持客户的习惯以及降低开发风险,决定使用Delphi调用BarTender来完成打印条码标签功能。

此功能的重点在于:

a) 使用BarTender格式打印

b) 格式中有需要变动的部分

2. 设计标签

a) 新建一个空白标签

b) 在画面上加入一个条形码控件,一个文本控件

c) 选中条形码控件,双击(或右键,属性),打开属性窗口;点击“高级”,选择“共享/名称”页,在共享名称中输入条形码控件的名字“BarCode1”;点击确定完成修改。这个步骤来定义在Delphi中(或其它语言VB等)访问的对象名。

d) 同样的步骤,给文本控件设置名称为“Text1”

e) 保存为“c:\test.btw”

3. 导入ActiveX组件

a) 打开Delphi(版本5.0及以上,其它没有测试)

b) 选择菜单“项目”-->“导入类型库”(ProjectàImport Type Library)

c) 在弹出的窗口中,列出可导入的类型库;找到“BarTender 7.75”,选中

d) 将要导入的类名称会列在class names中,由于这里的类名称会与系统已存在类名称有重复,将这个全部复制出来,将类型名称前面都加上Bt。如:TFormat修改为TBtFormat.

e) 类名称修改完成后,点击”安装”(Install)

f) 系统会安装组件到ActiveX控件页上

4. 调用BarTender打印

a) 新建应用程序

b) 在窗体上拖一个TBtApplication控件(ActiveX页上),命名为btApp1

c) 在窗体上放一个TButton控件,命名为btn1,双击btn1产生事件

d) 填写事件代码如下:

procedure TForm1.btn1Click(Sender: TObject);
begin
with btApp1.Formats.Open('c:\test.btw', True, '') do
//打开标签文件
begin
SetNamedSubStringValue('BarCode1', '1234567890'); //设置值
SetNamedSubStringValue('Text1', 'Hello BarTender!');
PrintOut(False, False); //打印
Close(btDoNotSaveChanges); //关闭不保存
end;
btApp1.Quit(btDoNotSaveChanges); //退出end;

e) 现在应该可以工作了是吗?...更多信息,请看引入的类型库源码(BarTender_TLB.pas)

相关文章
|
Linux Python Windows
为Python打包创建一个世外桃源,解决打包太大且启动慢的问题
首先是我用的是Anaconda的集成环境,由于Anaconda或者自己搭建的环境里内置了很多库,而且在日常的开发中又安装很多开发所需要的其他库,打包的时候就把很多不必要的模块打包进去,导致打包出来的文件过于臃肿.打开慢由于运行需要加载这些环境,由于加载的库过多导致耗时过长,而且Python是一门解释型语言,本身运行效率上也稍慢,所以能够明显体会到启动时的漫长等待 我们写代码就是为了高效,怎么能受得了打开慢且占资源的东西呢,那如何能解决这个问题呢?
2693 1
|
JSON 监控 Java
【SpringMVC】JSON数据返回及异常处理
Jackson是一个用于Java对象和JSON数据之间相互转换的开源库。它提供了一组强大的API,可以将Java对象序列化为JSON格式的字符串,也可以将JSON字符串反序列化为Java对象。Jackson库由三个核心模块组成::用于将Java对象与JSON数据进行绑定(序列化和反序列化)。它提供了一系列注解,如等,用于指定对象属性与JSON字段之间的映射关系,以及日期、时间等特殊类型的处理方式。Databind模块也提供了一些高级特性,如多态类型处理、双向引用处理等。
|
人工智能 缓存 自然语言处理
Bolt DIY架构揭秘:从模型初始化到响应生成的技术之旅
在使用Bolt DIY或类似的AI对话应用时,你是否曾好奇过从输入提示词到获得回答的整个过程是如何运作的?当你点击发送按钮那一刻,背后究竟发生了什么?本文将揭开这一过程的神秘面纱,深入浅出地解析AI对话系统的核心技术架构。
468 5
|
监控 前端开发 Java
Agent 的使用-Spring Boot | 学习笔记
快速学习 Agent 的使用-Spring Boot
Agent 的使用-Spring Boot | 学习笔记
|
供应链 监控 安全
构建未来:区块链技术在供应链管理中的应用
【8月更文挑战第30天】 在数字化浪潮的推动下,供应链管理正经历着前所未有的转型。本文深入探讨了区块链技术如何成为这一变革的核心动力。通过分析区块链的不可篡改性、透明度以及去中心化特性,揭示了其在提高供应链效率、确保商品真实性和加强各方信任方面的潜力。不同于常规摘要,本文还将提供具体的行业案例,以展现区块链技术在实际供应链管理中的应用场景与成效。
1406 4
|
程序员 API 计算机视觉
技术经验解读:【python自动化】02.pywin32库自动操作键鼠(保姆级代码注释)
技术经验解读:【python自动化】02.pywin32库自动操作键鼠(保姆级代码注释)
734 0
关于Delphi中的静态数组、动态数组、检测数组上下界、copy数组
关于Delphi中的静态数组、动态数组、检测数组上下界、copy数组
701 0
关于Delphi中的静态数组、动态数组、检测数组上下界、copy数组
[C++&OpenCv] 两点距离、三点角度的计算
[C++&OpenCv] 两点距离、三点角度的计算
421 0