给freeform数据窗口列穿上彩色外套

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

pb中数据窗口列的边框风格只有简单几种,如果想要边框颜色是彩色的就没有办法了。

其实可以利用动态创建rectangle,更改数据窗口列的边框颜色,主要适用free格式(不需要穿外套的列tag值设为0)。

global type gf_setbordercolor from function_object

end type

forward prototypes

global subroutine gf_setbordercolor (datawindow adw, long al_bodercolor)

end prototypes

global subroutine gf_setbordercolor (datawindow adw, long al_bodercolor);//rectangle(band=detail x="599" y="260" height="88" width="288" name=r_1 brush.hatch="7" brush.color="1627389951" pen.style="0" pen.width="5" pen.color="8421376" background.mode="1" background.color="553648127" )

Integer i

String ls_syntax

For i = 1 To Integer(adw.Object.DataWindow.Column.Count)

If adw.Describe("#"+String(i)+".Visible") = '1' and adw.Describe(ls_objects[i]+".tag") <> '0' Then

ls_syntax += " create rectangle(band="+adw.Describe("#"+String(i)+".Band")+" "

ls_syntax += ' x="'+ String(Integer(adw.Describe("#"+String(i)+".X")) - 4)+'"'

ls_syntax += ' y="'+ String(Integer(adw.Describe("#"+String(i)+".Y")) - 4)+'"'

ls_syntax += ' Height="'+ String(Integer(adw.Describe("#"+String(i)+".Height")) + 8)+'"'

ls_syntax += ' Width="'+ String(Integer(adw.Describe("#"+String(i)+".Width")) + 8)+'"'

ls_syntax += ' name=RBorder_'+ adw.Describe("#"+String(i)+".Name")

ls_syntax += ' brush.hatch="7" brush.color="1627389951" pen.style="0" pen.width="5" pen.color="'+String(al_bodercolor)+'" background.mode="1" background.color="553648127" )'

End If

Next

adw.Modify(ls_syntax)

end subroutine

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航