以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 这个画线条的是否是BUG (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=82768) |
||||
-- 作者:douglas738888 -- 发布时间:2016/3/24 14:39:00 -- 这个画线条的是否是BUG 在窗口设计和打开预览时所画线条是正常的,但是在打印阅览时,竖线条就出现问题,不在绘制位置,请老师看看 窗口设计 打印阅览
|
||||
-- 作者:大红袍 -- 发布时间:2016/3/24 14:57:00 -- 你微调一下长度就好,从像素转成毫米可能有一定的误差。 |
||||
-- 作者:douglas738888 -- 发布时间:2016/3/24 15:33:00 -- 经过测试,微调也不行,打印阅览没有问题了,窗口的线条就差一大截, 再测试,发现,在竖线条高度的范围内不能有TEXTBOX ,LABLE 其他控件存在,不然指定容器打印方式就会把竖线条往上移动, 如果竖线条周围没有其他TEXTBOX控件,窗口绘制和打印预览是正常的,请老师也测试下看看。 因为我需要以电子表格的方式进行设计,部分控件要放入,需要画线条,似乎只能用指定容器打印,专业报表打印还是有些复杂哦。
[此贴子已经被作者于2016/3/24 15:33:39编辑过]
|
||||
-- 作者:大红袍 -- 发布时间:2016/3/24 15:54:00 -- 我测试没问题,做个例子发上来。 |
||||
-- 作者:douglas738888 -- 发布时间:2016/3/24 16:19:00 --
|
||||
-- 作者:大红袍 -- 发布时间:2016/3/24 16:26:00 -- Dim grp As WinForm.Panel = e.Form.Controls("Panel1") Dim doc As PrintDoc = e.Form.GernatePrintDoc(grp) For Each c As Object In doc.body.children If typeof c Is prt.RenderText Then If c.Text.length > 100 Then c.height = "auto" End If End If Next doc.Preview() |
||||
-- 作者:狐狸爸爸 -- 发布时间:2016/3/24 16:40:00 -- 收藏待处理 |
||||
-- 作者:douglas738888 -- 发布时间:2016/3/24 16:43:00 -- 谢谢大红袍老师,另外请教 If c.Text.length > 100 Then, 这句代码怎样理解,输入内容的长度大于100与竖线的关系是什么。 |
||||
-- 作者:大红袍 -- 发布时间:2016/3/24 16:45:00 -- 你设置 c.height = "auto" 的时候影响的,不设置就没问题。加入判断,是为了上面的textbox不执行那句代码。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2016/3/24 16:53:00 -- 撤销收藏,我还以为foxtable有问题呢
|