数据窗口Grid格式,打印时怎样加个表头

zxh420625 2017-09-05 11:21:03
数据窗口Grid格式,打印时怎样加个表头???
...全文
789 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
r00_a2lBUR 2017-09-07
  • 打赏
  • 举报
回复
可以把grid的数据窗口输出图片,把表头也输出成图片,再把这两张图片放在一个free的数据窗口,再打印。
WorldMobile 2017-09-05
  • 打赏
  • 举报
回复
Grid是数据窗口中一种用于统计、分析数据的显示风格,与Execl表格类似,适合中国人的使用习惯。但是,开发者在使用Grid数据窗口时会碰到一个问题:由于其标题也呈网络状,PB没有提供较简单地设置标题的方法,怎样较好地给其添加标题就成为开发人员碰到的一个难题。通过探索,找到一种自认为较好的添加标题的方法。 假设给Grid加两个标题:d_bt1,d_bt2。d_bt1为大标题,d_bt2为小标题,如有多个小标题同样添加。假设数据最后一列名为n03。 一、添加标题d_bt1(大标题) 1、放一个Text(文本框)对象到DataWindow的表头上:将header向下拉,再将表头部分向下移,然后放一个Text对象到header区。 2、在此Text上点击鼠标右键选择Properties:①General:在name栏设置标题名:d_bt1;②Font:Text Color->Black,Background->White;③Position:x=0,y=0,Layer->Foreground;④Expression:设置font.weight与width的表达式:long(describe('n03.x'))+long(describe('n03.width'))+10,其中n03为Detail部分的最后一个字段名称,加10是为了盖住最右边的网格线。将标题设为居中,在改变表格栏目大小时标题会随之变动。 3、改变Text的位置和宽度,然后将此Text的内容改为正确的报表标题,记下Position.Width与Height的值。 二、添加标题d_bt2(小标题) 1、放一个Text对象到DataWindow表头的标题d_bt1下。 2、在此Text上点击鼠标右键选择Properties:①General:在name栏设置标题名:d_bt2;②Font:Text Color->Black,Background->White;③Position:x=0,y=200(200为d_bt1.Positon.Height的值),Layer->Foreground,将Width的值设为d_bt1.Position.Width的值;④Expression:设置font.weight与width的表达式:long(describe('n03.x'))+long(describe('n03.width'))+10,说明同上。 三、添加横线 1、在DataWindow表头的标题d_bt2下放一械Line(横线)对象。 2、在此Line上点击鼠标右键选择Properties:①Position:x1=0,x2=d_bt1.Position.Width,y1与y2的值应为d_bt2.Position.y+d_bt2.Position.Height,在设计时取值比此值稍大一些,便于设计;②Expression:x2=long(describe('n03.x'))+long(describe('n03.width'))+9,y1(y2)=long(describe('d_bt2.y'))+long(describe('d_bt2.height')) 四、在脚本中动态修改标题内容 对于标题中文本可以用dw_1.modify("text_name.text = '标题'") 在程序中动态修改,标题部分还可使用变量。

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧