在PB中应用灵活多样的排序
敬业的IT人
互联网
佚名
2008-1-4 12:28:48
PowerBuilder是许多数据库开发人员熟悉的开发工具,也是许多程序开发人员急需了解和使用的数据库前端开发工具。尤其是它的数据窗口,能很好地展现各种数据。同时,PowerBuilder也是基于Windows的图形用户界面,因此操作非常方便,熟悉Windows的用户一定对资源管理器不陌生,当目录或文件很多时,当然会想到使用排序来尽快定位目标,你只要用鼠标在资源管理器上端的name、size、type或modified中的任意一项点击,它就会将此项按升序或降序排列。同样地,在PowerBuilder中,如果数据比较多,我们也可以采用这种办法来排序以尽快查找记录。
一、实现原理数据窗口提供了Clicked事件,当用户使用鼠标点击某列的标题时,我们可以通过参数(dwo.Name)来获得当前点击的对象,经过适当处理可得到当前点击的列,然后根据连续点击该列的奇偶数来决定用升序或降序排列记录。
二、实现细节 1、先设计一个数据窗口和窗口以及一些必要的按钮,设计好的窗口。
2、要实现这样的排序功能,定义两个实例变量String pre_col=“”和Int click_time=0,他们分别记录上次点击的列和点击同一列的奇偶数。然后在dw_1的Clicked事件中添加如下脚本:
String clicked_pos,col,formatLong il_posclicked_pos = dwo.Name //取点击的对象il_pos = Pos(clicked_pos,_t) //对于列标题,取得的对象是列名+”_t”If il_pos $#@62;0 Thencol = Left(clicked_pos,il_pos -1)If col=pre_col ThenIf click_time=0 Thenclick_time = 1format = col+" A"Elseclick_time=0format = col+" D"End IfElseclick_time = 0format = col+" A"End Ifpre_col = coldw_1.SetSort(format)dw_1.Sort()End If3、采用上面的方法可实现象Windows中资源管理器灵活排序的功能。实现的结果所示(按Last Name降序排列)。
三、结束
象这些看似虽小的功能,但是它能给我们开发的程序带来许多方便,让我们的程序功能更丰富,更强大,让用户充分享受图形用户界面带来的形象直观、方便好用、功能强大等好处。进入讨论组讨论。
- 最新文章
- 如何实现PB应用程序的屏幕保护功能[01-04]
- PowerBuilder数据录入同步显示[01-04]
- 在PB中实现全文检索[01-04]
- 利用PB5实现中英文信息滚动显示[01-04]
- PB中一个类Word打印对话框的实现[01-04]
- PB6中报表输出的技巧二则[01-04]
- 相关文章
- 如何实现PB应用程序的屏幕保护功能[01-04]
- PowerBuilder应用开发系列讲座(16)[01-04]
- 用PowerBuilder6.0建立B/S结构的应用程序[01-04]
- PowerBuilder应用开发系列讲座(40)[01-04]
- PowerBuider6.0设置应用对象[01-04]
- Powerbuilder应用开发系列讲座(31)[01-04]
