前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于PowerBuilder的搜索

PowerBuilder数据窗口中记录颜色的隔层显示 — 编程爱好者 programfan.com ProgramFan.com 回到首页 设为首页 加入收藏 网站留言 人才招聘频道 编程爱好者BLOG 编程爱好者论坛 首页 | 论坛 | 博客 | 人才招聘 | 书评 | 文章 | 资讯 | 下载 | 源码 | 项目交易 | 兴趣小组 | 网友作品 | 资源共享 | 收藏夹 | ACM题库 | VBAPI查询 您所在的位置:编程爱好者网站 - 文档中心 - PowerBuilder文章 - 正文 我要投稿 文章搜索 PowerBuilder文章 全部分类 PowerBuilder数据窗口中记录颜色的隔层显示 (加入日期:2005-2-13) 【保存文章至硬盘】【打印文章】【字体:大 中 小】 分享到:   1. 前言   在PowerBuilder中数据窗口(DataWindow)技术可以说是PB的核心,以至于Sybase公司甚至为它申请了专利。对数据库中数据的所有操作几乎都是通过DataWindow对象来完成的,数据窗口对象创建的好坏直接影响到应用程序本身的优劣。   对于许多新接触PowerBuilder的程序员来说,DataWindow控件和DataWindow对象之间的差别常常让人混淆不清。其实,DataWindow控件就是一个类似于CheckBox、CommandButton控件的控件。而DataWindow对象则是用画板创建在PBL库中的对象。DataWindow控件相对于DataWindow对象来说就像是一个容器一样将之包含在控件里。   在实际使用过程中经常会用到的一些数据窗口的使用技巧。现在我们就说说数据窗口中记录颜色的隔层显示这个大家常用的技巧。   2. 功能说明   数据窗口在Retrieve后往往会返回很多条记录,而这些记录中的数据复杂,通常会造成视觉上的不便。因此如果能够使行与行之间用不同的颜色进行区分,例如第一行记录的背景色是浅白色,第二行记录的背景色是浅灰色,第三行又是浅白色,第四行又是浅灰色……依次类推,既能极大地方便使用者,又能让您的应用程序增色不少。同时当使用者点击当前行时,颜色就会变成浅黄色,这样的效果谁都会喜欢。   3. 实现方法   要想让显示的数据达到上述效果,我们首先应该知道的是这些表现形式应该在数据窗口对象的什么地方体现出来。很显然,数据窗口中的所有数据是在细目带(Detail)中列出的,因此只要在细目带中设置列对象(Column)的某项属性就会影响到它的显示效果。具体实现如下:   打开数据窗口,选择所有的列(Column)。   在Properties窗口中翻到Font标签页,单击Background Color属性旁边的一个带有红色图标的小按钮。见图7.1。 图7.1 点取红色小按键   在Expression表达式一栏中输入(见图7.2): if(currentrow()=getrow(),rgb(255,240,194),if(mod(getrow(),2)=1, &rgb(255,254,249) , rgb(247,247,239))) 图7.2 输入表达式   注:   表达式中rgb(255,240,194)为浅黄色,rgb(255,254,249)为浅白色,rgb(247,247,239)为浅黄色。   4.效果展示   返回预览窗口看看,效果相当不错!见图7.3。 }             图7.3 颜色效果   5. 相关函数说明   CurrentRow()与GetRow()函数是数据窗口信息函数。   1. CurrentRow()   功能描述:得到数据窗口当前得到输入焦点的行的行号。   语法:CurrentRow()   返回值:Long。函数执行成功时返回当前行的行号,无当前行时返回0。   2. GetRow()   功能描述:返回数据窗口相应带中的当前行行号。   语法:GetRow()   返回值:Long。函数执行成功时返回相应带中当前行的行号,如果数据窗口中无数据则返回0,发生错误时返回-1。 本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( ProgramFan.Com ) 【编程爱好者论坛】 本栏最新文章 pb中压缩整理access数据库文件(mdb) (2005-3-7)PowerBuilder数据窗口中记录颜色的隔层显示 (2005-2-13)PB8.0应用程序编译发布技术研究 (2005-2-13)如何在PB中制作特殊形状数据窗口或按钮 (2005-1-29)PB和EAServer共筑多层应用架构 (2005-1-4)PB中的数据窗口自动刷新技术 (2005-1-4)浅析PowerBuilder下动态SQL语句 (2005-1-4)PB中读取地磅BCD解码 (2004-9-29)PB通过OLEObject使用Word (2004-9-29)在PowerBulider中读写IC卡 (2004-9-23) 文章分类 C/C++文章 Visual Basic Visual C++ C++ Builder Visual Foxpro PowerBuilder Delphi ASP ASP.net JAVA WINDOWS编程 VB.net JSP 游戏开发 汇编语言 数据库开发 Visual C# XML PHP 算法 Linux文章 最新文章 Delphi环境下利用TWAIN实现对扫描仪的控制PHP开发者常犯的10个MySQL错误 C语言编程程序的内存如何布局在Linux下灵活使用expect脚本的小窍门VB.Net调用存储过程并得到返回值ASP.NET中的代码分离JAVA中sleep()、wait()、yield()、join()方法浅析详解VB.NET对象浏览器作用体现探索ASP.NET中Tailspin TravelUI层奥秘老生常谈:从VB6迁移到VB.netOracle中最易忽视的两个重要进程探秘Java 7新增垃圾回收器G1特性在Asp.net MVC中使用RepeaterJava按字节长度截取字符串Java解析XML文件的四种方法Java和.NET互操作:应该放弃Web Service吗熟知Linux操作系统紧急情况处理方法用PHP的PEAR DB模块编写数据库脚本(8)图形和图像编程(一)(7)Visual Studio菜单和工具条编程实战 最新招聘信息 关于本站 - 网站导航 - 广告服务 - //--> 诚邀加盟 - 联系站长 - 友情链接 - 赞助本站 Copyright© 1999-2013 Programfan.com. All Rights Reserved 网站制作&维护:Hannibal Email: webmaster@pfan.cn -