Foxtable(狐表)用户栏目专家坐堂 → 指定的转换无效


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

主题:指定的转换无效

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


加好友 发短信
等级:小狐 帖子:328 积分:2911 威望:0 精华:0 注册:2015/8/22 20:07:00
指定的转换无效  发帖心情 Post By:2022/10/21 22:44:00 [只看该作者]

利用报表形式打印标签的设计中,如果标签的长宽我直接用数字表示一切正常无错,但是如果我用变量来替代(全局变量也不行),这样就总是出错,提示如图,不知是什么原因,望老师解答,谢谢!

Dim doc As New PrintDoc '定义一个报表
Dim rt As New prt.RenderText '定义一个文本对象

Dim ph, pw, pm, hn, hd, vn, vd As Double '定义纸长,纸宽,页边距、标签行数、行间距、列数、列间距


Doc.PageSetting.LeftMargin = pm '设置左边距
Doc.PageSetting.RightMargin = pm '设置右边距
Doc.PageSetting.TopMargin = pm '设置上边距
Doc.PageSetting.BottomMargin = pm '设置下边距

ph = 297
pw = 210
hn = 2
vn = 3
hd = 1
vd = 2

Dim lh, lw '定义标签的高度、宽度
lh = (ph - 2 * pm - (hn - 1) * vd) / vn
lw = (pw - 2 * pm - (vn - 1) * hd) / hn



Dim rtt As prt.RenderText '定义一个文本对象
doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight '设置排列方式

For i As Integer = 1 To hn * vn
    rtt = New prt.RenderText() '创建文本对象
    rtt.Text = "Hello Foxtable " & i '设置文本对象的内容
    rtt.Height = 95 '宽度毫米
    rtt.Width = 99 '宽度毫米
    rtt.Style.Spacing.left = vd '设置左边方向的间隔
     rtt.Style.Spacing.top = hd '设置顶部方向的间隔

    rtt.Style.Borders.All = New prt.Linedef(1, Color.Red) '设置边框
    rtt.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
    rtt.Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中
    doc.Body.Children.Add(rtt) '将文本对象加入到报表
Next
doc.Preview() '预览


图片点击可在新窗口打开查看此主题相关图片如下:x.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2022/10/21 22:46:30编辑过]

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


加好友 发短信
等级:四尾狐 帖子:826 积分:7130 威望:0 精华:0 注册:2017/8/31 12:07:00
  发帖心情 Post By:2022/10/22 7:45:00 [只看该作者]

添加转换函数试试:
如:CDbl(hl)
我前阵子也遇到此现象,一直不得其解,反复折腾原来如此。
Dim hl As Double  '这样也不行

如下:
        doc.PageSetting.TopMargin = CInt(ydr("上边距")) '设置上边距
        doc.PageSetting.BottomMargin = CInt(ydr("下边距")) '设置下边距  
        doc.PageSetting.LeftMargin = CInt(ydr("左边距"))'设置左边距
        doc.PageSetting.RightMargin = CInt(ydr("右边距")) '设置右边距
        cr = Color.FromARGB(CInt(ydr("网格线颜色")))
        ht = CInt(ydr("行高"))
[此贴子已经被作者于2022/10/22 7:51:59编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110744 积分:563646 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/10/22 9:45:00 [只看该作者]

Dim lh, lw as integer '定义标签的高度、宽度

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


加好友 发短信
等级:小狐 帖子:328 积分:2911 威望:0 精华:0 注册:2015/8/22 20:07:00
  发帖心情 Post By:2022/10/22 22:07:00 [只看该作者]

谢谢2位解答,我这里的问题还是dim定义没写全,低级错误,不好意思。蓝老师慧眼识错!

 回到顶部