一
在开发应用系统的时候,数据窗口中用户焦点要从一 个字段转移到另外一个字段的时候,只能用tab键来实现,而用户通常是用回车键来改变焦点, 为了保持用户的习惯,在系统中实现良好的用户操作界面,我们就必须实现在数据窗口中用enter 代替tab在字段间移动。实现方法:1)您需要创建一个可视的用户对象(userobject), 在标准(standard)对象中选择datawindow。
2)选择declare菜单项中的userevents子菜单, 定义一个用户事件,取用户事件名为pb_enter(事件名可任意指定),事件号(eventid)选 择pbm_dwnprocessenter(此事件号不能任意指定)。点ok按纽退回。
3)在创建的用户对象上单击鼠标右键,选择弹出 菜单上的scripts项来编写程序,在selectevent上选择你刚才定义的pb_enter事件,在编 辑窗中输入以下两条语句后退出: send(handle(this),256,9,long(0,0)) return1
4)给你的用户对象取一个名字后保存即可。
在你新建窗口需要用到数据窗口对象时,你就可 以把你所定义的用户对象放入你的窗口中来代替pb提供的数据窗口对象,它就可以实现用enter 代替tab在字段间移动。
二
我们在powerbuilder应用程序的开发过程中,使用数 据窗口时,经常会遇到某列的数据太长,不能同时全部显示的情况.若采用自动水平滚动,操 作起来又不够简便.下面介绍一种方法,实现列数据多行显示,即实现列数据的自动折行.具 体步骤如下:1)打开一个数据窗口。
2)在需设定自动折行的列上双击鼠标,弹开此列 的属性窗口。
3)选择position标签,选中autosizeheight复 选框。
4)选择edit标签,不选中autohorzscroll复选 框。
5)单击ok按钮,保存所做的修改。
6)点中detail带(写有detail的灰色长带), 击鼠标右键,选择properties菜单项。
7)选中autosizeheight复选框。
8)单击ok按钮,保存所做的修改。
9)保存此数据窗口。
注意:连在一起的汉字(中间没有标点或空格分隔), 系统将认为是一个单词,不会自动进行折行。