PB中,在用grid形式的数据窗口中,跨列标题头的制作方法
2016-03-17 19:22
330 查看
PB的数据窗口中,有一种grid形式的数据窗口,因为可以拖动各列的列宽,在程序中广泛使用,但在制作中国式的报表中,又存在着许多不方便,所以,一般程序员对它是“又爱又恨”。下面,经过摸索,找出一个制作跨列标题头的制作方法,制成后,标题头可以随着列宽的变化而变化,非常方便。结果如下图所示:
步骤如下:
1.添加一个text,将背景色选为非透明色;position中的layer,选为foreground,这样就可以拖动列宽了
2.在position属性标签页的width里,点右边的小按钮,出现定义其宽度的对话框,在里面输入long(describe("ck_je_t.x")) + long(describe("ck_je_t.width")) - long(describe("ck_sl_t.x")),这里红色的部门作一个解释,这里实际上定义了text的动态列宽,即它的列宽要依据“金额”列的x值 + “金额”列的宽度,再减去“数量”列的x值,这样实际上就在程序运行时,可以动态地设置“出库”标题栏的列宽了。
3.再设置text的x值,在PB10.5里,x值右边的小按钮显示为灰色,不可用,没关系,关掉它,在system tree里找到它,再用edit source找开它,学会分析,找到刚才添加的text的属性,在默认值后面加上一个表达式,我加的是“~tlong(describe(~"ck_sl_t.x~"))”,注意其中的格式,在edit source里,会用~t作为分隔符。
4.好了,试试看吧, 在程序运行时,拖动列,跨列的标题头也跟着动了,完全达到了我们要求的效果。
步骤如下:
1.添加一个text,将背景色选为非透明色;position中的layer,选为foreground,这样就可以拖动列宽了
2.在position属性标签页的width里,点右边的小按钮,出现定义其宽度的对话框,在里面输入long(describe("ck_je_t.x")) + long(describe("ck_je_t.width")) - long(describe("ck_sl_t.x")),这里红色的部门作一个解释,这里实际上定义了text的动态列宽,即它的列宽要依据“金额”列的x值 + “金额”列的宽度,再减去“数量”列的x值,这样实际上就在程序运行时,可以动态地设置“出库”标题栏的列宽了。
3.再设置text的x值,在PB10.5里,x值右边的小按钮显示为灰色,不可用,没关系,关掉它,在system tree里找到它,再用edit source找开它,学会分析,找到刚才添加的text的属性,在默认值后面加上一个表达式,我加的是“~tlong(describe(~"ck_sl_t.x~"))”,注意其中的格式,在edit source里,会用~t作为分隔符。
4.好了,试试看吧, 在程序运行时,拖动列,跨列的标题头也跟着动了,完全达到了我们要求的效果。
相关文章推荐
- MyBatis3:SQL映射
- c++类的基础
- Linux查看物理CPU个数、核数、逻辑CPU个数
- Makefile 学习日记(五)——makefile中的函数
- C++ 实现比较版本号
- Spark内核讲解之弹性分布数据集(一)
- 100万并发连接服务器笔记之Java Netty处理1M连接会怎么样
- uva10825 (暴力)
- LeetCode minDepth of 2 bin tree
- 第二周问题汇总
- mengento 数据库模型
- 404、500、502等HTTP状态码介绍
- android 内存处理工具
- C++ STL stack/queue
- java当中this应该怎么理解?
- 好文记载
- 消息系统Kafka介绍
- 100万并发连接服务器笔记之Erlang完成1M并发连接目标
- 微信用户昵称乱码解决
- 批量启动\停止ORACLE服务