Foxtable(狐表)用户栏目专家坐堂 → [求助]二维码打印有关问题,急~~~


  共有5186人关注过本帖树形打印复制链接

主题:[求助]二维码打印有关问题,急~~~

帅哥哟,离线,有人找我吗?
云淡风轻
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:409 积分:3022 威望:0 精华:0 注册:2012/1/19 10:11:00
[求助]二维码打印有关问题,急~~~  发帖心情 Post By:2013/12/12 10:50:00 [只看该作者]

我参看了案例和帮助文档,做了一个二维码打印的窗口,目的是将二维码打印出来后剪下来贴在实物上,但以下3个问题还未能解决:

1、打印预览效果不好,二维码都挤在一起了,如何设置各二维码打印的间距,每行和每列的个数(每行3个,每列5个)?

2、我想在打印预览中每个二维码上方显示文本信息(即数据表字段“档号”的内容),如何做到?

3、打印内容格式为“字段题名+字段内容”,目前只手工添加了2个字段的题名和内容,如何自动读取所有字段标题及其内容呢?

谢谢!!

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:二维码.rar


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 11:06:00 [只看该作者]

.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:二维码.foxdb


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 11:07:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
云淡风轻
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:409 积分:3022 威望:0 精华:0 注册:2012/1/19 10:11:00
  发帖心情 Post By:2013/12/12 11:18:00 [只看该作者]

非常谢谢,关于第三问,bar.Code = "档号:" + r("档号") + ";案卷题名:" + r("案卷题名")

自动读取数据表的字段名称和内容如何设置(主要是自动获取字段题名)?


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 11:24:00 [只看该作者]

什么叫做自动获取? 你现在不是已经自动获取了吗?

 回到顶部
帅哥哟,离线,有人找我吗?
云淡风轻
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:409 积分:3022 威望:0 精华:0 注册:2012/1/19 10:11:00
  发帖心情 Post By:2013/12/12 11:52:00 [只看该作者]

自动获取是循环遍历获取数据表的所有字段名称的意思,案卷库共有8个字段,8个字段名称都写在二维码里,但是不是手工一个一个中文写上去,是否有获取字段名称的属性,比如col.name还是col.title等等

[此贴子已经被作者于2013-12-12 11:52:20编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 11:57:00 [只看该作者]

for each c as col in tables("表A").cols
     messagebox.show(c.name)
next

 回到顶部
帅哥哟,离线,有人找我吗?
云淡风轻
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:409 积分:3022 威望:0 精华:0 注册:2012/1/19 10:11:00
  发帖心情 Post By:2013/12/12 16:00:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:二维码.rar

首先感谢版主的帮助,在版主的帮助下,我根据自己的实际修改了一下代码,目前3个问题都已解决,而且取得了预期和理想的效果!

目前能做到对任意当前表的所有行的二维码打印,无需指定表名、行名和列名,代码迁移性和灵活性非常好。

但是我又想了想,能否优化代码,可以对选定行打印二位码,而不仅仅是当前表的所有行?

这样的话灵活性、实用性就更好了,不仅可以打印单个二维码,也可以批量打印二维码。

请求帮助~~~

[此贴子已经被作者于2013-12-12 16:01:09编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 16:01:00 [只看该作者]

利用  getCheckedrows 不就可以获得所有选中行了吗? 然后循环它就好了


 回到顶部
帅哥哟,离线,有人找我吗?
云淡风轻
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:409 积分:3022 威望:0 精华:0 注册:2012/1/19 10:11:00
  发帖心情 Post By:2013/12/12 16:09:00 [只看该作者]

以下内容为程序代码:

1 Dim doc As New PrintDoc
2 Dim img As prt.RenderImage
3 Dim Bar As New BarCodeBuilder
4 Dim rt As new prt.RenderText
5 Bar.Symbology = Barpro.Symbology.QRCode
6 Bar.BarRatio = 0.3
7 Bar.BarWidth = 5
8 Bar.BarHeight = 5
9 Doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight
10 For Each r As Row In CurrentTable.GetCheckedRows
11 Dim ra As New prt.RenderArea
12 ra.SplitHorzBehavior = prt.SplitBehaviorEnum.Never '禁止水平分割
13 ra.SplitVertBehavior = prt.SplitBehaviorEnum.Never '禁止垂直分割
14 ra.width = 50
15 ra.height = 60
16 rt = New prt.RenderText
17 rt.Text = "档号:" & r("档号")
18 rt.X = 5
19 rt.Y = 2
20 ra.Children.Add(rt) '添加到容器中
21 Dim i As Integer = 0
22 Dim temp As String = ""
23 For Each c As Col In CurrentTable.cols
24 temp = temp & "(" & i+1 & ")" & c.name & ":" & r(i) & ";"
25 i = i + 1
26 Next
27 bar.Code = temp.Substring(0,temp.length-1)
28 img = new prt.RenderImage
29 img.Image = bar.GetImage
30 img.Width = 45
31 img.height = 45
32 img.Style.Spacing.All = 2
33 img.Y = 5
34 ra.Children.Add(img)
35 Doc.Body.Children.Add(ra)
36 Next
37 Doc.Preview()

 

 

打印没有显示,怎么办?

 


 回到顶部
总数 14 1 2 下一页