在DW的header动态建立TEXT的问题

fuxiaoyang13 2010-11-30 06:51:47
ls_return = this.modify( &
"create text(band=header alignment='0' text='6' border='6' color='16776960'" + &
" x='"+string(ll_newx)+"' y='0' height='" +string(ll_height)+ "' width='50'" + &
" name= " + ll_colname +"_filter_" + string(ll_col , '00') + &
" font.face='Webdings' font.height='-10'" + &
" font.weight='400' font.family='1' font.pitch='2'" + &
" font.charset='2' background.mode='1' background.color='12639424')")

我用上面的代码要在DW的header区每列的尾部建立个50宽的TEXT控件,可实际建立出来的TEXT覆盖整个列了
请各位大侠帮忙看看是啥原因!PB9.0的 DW是GRID风格的
...全文
367 30 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
多谢xiaobn_cn兄了!
xiaobn_cn 2010-12-01
  • 打赏
  • 举报
回复
我就能想出这个办法了,有时候PB做的工作太多反而会给程序员造成困扰。呵呵
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
不过这样还要去计算当前标题可以容纳的字符数才能将要加的字符插入前部或尾部!
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
这个倒是个方法!!!!!!!!!!
xiaobn_cn 2010-12-01
  • 打赏
  • 举报
回复
grid风格实现可以通过以下办法实现:
不需要生成新的text ,就在grid标题的text后面加上你所需要字符,例如将“名称”改为“ 名称 ...”,然后在clicked事件中通过算法(见后面)判断出点击的位置相对于该控件左侧的偏移量,当偏移量符合指定值时认为用户点击的是“...”位置,然后执行相应的代码。

// 数据窗口偏移量 + 点击位置X坐标 - 控件的X坐标
Integer(This.Object.Datawindow.HorizontalScrollPosition) + XPos - Integer(This.Describe(dwo.Name + '.X'))
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
要写代码啊,这个俺不不知道咋写,要是GRID风格能实现就好了
xiaobn_cn 2010-12-01
  • 打赏
  • 举报
回复
PB里没有标准表格这种称呼的数据窗口,一般来说做表格都使用grid风格的。
xiaobn_cn 2010-12-01
  • 打赏
  • 举报
回复
tabular相比与grid缺少了列宽调整和列移动的功能,这是没办法的事,如果需要该功能可以考虑自已写代码实现。
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
标准的表格式是我在一个报表设计器里看到的!可能是致用报表设计器吧,不知道对应到PB里是哪种
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
tabular是可以,但不是我想要的效果!!
xiaobn_cn 2010-12-01
  • 打赏
  • 举报
回复
我不是很清楚你指的标准式表格是什么概念,用tabular可以实现的。
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
这样啊,那TABLULAR和标准的表格式能实现吗!
xiaobn_cn 2010-12-01
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 fuxiaoyang13 的回复:]
我要求的是新建的TEXT只占每个例标题的很小一部分,其余部分还是原列标题,单击新建的TEXT的哪小部分时才弹出下拉表,单击列标题时不弹出下拉表
[/Quote]

据我所知你的要求是达不到的,至少到目前为止我还没找到解决的方法。因为你插入的text控件会被PB自动调整位置和大小。调整的规则是以数据列的间隔线为基准。
hyf_0023 2010-12-01
  • 打赏
  • 举报
回复
你可以做个DataWindow,在header区每列的尾部建立个50宽的TEXT控件,再看一下EDIT SOURCE,比较一下
Syntax有什么不同。
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
我要求的是新建的TEXT只占每个例标题的很小一部分,其余部分还是原列标题,单击新建的TEXT的哪小部分时才弹出下拉表,单击列标题时不弹出下拉表
  • 打赏
  • 举报
回复
新手路过,暂不发表意见
xiaobn_cn 2010-12-01
  • 打赏
  • 举报
回复
grid风格的有自动对齐的功能,以是column的分隔线为基准,所以你create的text会自动与分隔线对齐。我还没有找到该问题的解决办法。
fuxiaoyang13 2010-12-01
  • 打赏
  • 举报
回复
不是,是新建的TEXT完全覆盖原来的列头了,本来是在每列的后部建个箭头的TEXT,单击箭头的TEXT就弹出个下拉表,单击原列头是不弹出的,现在是在前部了,而且是覆盖了列标题对象
zlf19810306 2010-12-01
  • 打赏
  • 举报
回复
而且在翻页等操作的时候,容易对不准
zlf19810306 2010-12-01
  • 打赏
  • 举报
回复
grid不是不能做,做是可以做,不过很麻烦,你把text都调成bring to front,然后写代码排位置。不过这样很是麻烦。
加载更多回复(10)
XML越来越热,关于XML的基础教程网络上也随处可见。可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章。首先有两点是需要肯定的:   第一:XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解,等待只会让你失去机会;   第二:新知识肯定会有很多新概念,尝试理解和接受,您才可能提高。不要害怕和逃避,毕竟我们还年轻。   本文共分五大部分。分别是XML快速入门,XML的概念,XML的术语,XML的实现,XML的实例分析。最后附录介绍了XML的相关资源。作者站在普通网页设计人员的角度,用平实生动的语言,向您讲述XML的方方面面,帮助你拨开XML的神秘面纱,快速步入XML的新领域。 • 第一章:XML快速入门 • 一. 什么是XML? • 二. XML是新概念吗? • 三. 使用XML有什么好处? • 四. XML很难学吗? • 五. XML和HTML的区别 • 六. XML的严格格式 • 七. 关于XML的更多 • 第二章:XML概念 • 一. 扩展性 • 二. 标识 • 三. 语言 • 四. 结构化 • 五. Meta数据 • 六. 显示 • 七. DOM • 第三章:XML的术语 • 导言 • 一.XML文档的有关术语 • 二.DTD的有关术语 • 第四章:XML的语法 • 一.XML语法规则 • 二.元素的语法 • 三.注释的语法 • 四.CDATA的语法 • 五.Namespaces的语法 • 六.entity的语法 • 七.DTD的语法 • 第五章:XML实例解释 • 一.定义新标识 • 二.建立XML文档 • 三.建立相应的HTML文件 • 第六章:XML相关资源 五. XML和HTML的区别 XML和HTML都来自于SGML,它们都含有标记,有着相似的语法,HTML和XML的最大区别在于:HTML是一个定型的标记语言,它用固有的标记来描述,显示网页内容。比如表示首行标题,有固定的尺寸。相对的,XML则没有固定的标记,XML不能描述网页具体的外观,内容,它只是描述内容的数据形式和结构。 这是一个质的区别:网页将数据和显示混在一起,而XML则将数据和显示分开来。 我们看上面的例子,在myfile.htm中,我们只关心页面的显示方式,我们可以设计不同的界面,用不同的方式来排版页面,但数据是储存在myfile.xml中,不需要任何改变。 (如果你是程序员,你会惊讶的发现,这与模块化面向对象编程的思想极其相似!其实网页何尝不是一种程序呢?) 正是这种区别使得XML在网络应用和信息共享上方便,高效,可扩展。所以我们相信,XML做为一种先进的数据处理方法,将使网络跨越到一个新的境界。 六. XML的严格格式 吸取HTML松散格式带来的经验教训,XML一开始就坚持实行"良好的格式"。 我们先看HTML的一些语句,这些语句在HTML中随处可见: 1. sample 2.sample 3.sample 4.samplar 在XML文档中,上述几种语句的语法都是错误的。因为: 1.所有的标记都必须要有一个相应的结束标记; 2.所有的XML标记都必须合理嵌套; 3.所有XML标记都区分大小写; 4.所有标记的属性必须用""括起来; 所以上列语句在XML中正确的写法是 1. sample 2.sample 3.sample 4.samplar   另外,XML标记必须遵循下面的命名规则: 1.名字中可以包含字母、数字以及其它字母; 2.名字不能以数字或"_" (下划线) 开头; 3.名字不能以字母 xml (或 XML 或 Xml ..) 开头; 4.名字中不能包含空格。 在XML文档中任何的差错,都会得到同一个结果:网页不能被显示。各浏览器开发商已经达成协议,对XML实行严格而挑剔的解析,任何细小的错误都会被报告。你可以将上面的myfile.xml修改一下,比如将改为,然后用IE5直接打开myfile.xml,会得到一个出错信息页面: XML轻松学习手册 ajie

604

社区成员

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

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