PB培训、某些功能常规的处理办法
1、应用app的常规处理需要处理Open事件
GetApplication ( ).**FrameTitle ="标题名"
GetApplication ( ).**PopMenuText="关于显示的中文"
This.MicroHelpDefault = "欢迎信息"
DWMessageTitle = '错误提示标题'
连接数据库等
idle事件
空闲自动锁定等处理
Close事件断开数据库,释放资源
2、窗口window的处理
处理标题:如果不是参数传递或者程序控制就必须制定标题
窗口缩放:如果需要缩放必须处理resize事件,并指定相应的属性
3、菜单menu的处理
一定要对“-”进行指定不重复的名字,便于今后继承是不会出现重名
注意快捷键
4、数据窗口dw的处理
选中某行的标准代码
下拉数据窗口的及时刷新:在合适的事件中使用dw.Getchild(),然后dw.Retrieve()
5、多选框Checkbox的处理
判断是否选中标准语法IF This.Checked THEN ... ELSE END IF
6、收音机按钮RadioButton
多组选项需要用group框包含起来,否则会出乱子。
判断是否选中标准语法IF This.Checked THEN ... ELSE END IF
7、TV的处理
关于展开的应用
ExpandItem(itemhandle),在添加数据到数据库中同时显示在tv中需要注意先展开一下然后插入到tv
否则根据通常的处理,展开提取数据库加上插入的会出现重复的,如果已经展开过再重数据库中添加就不会有问题
Clicked 和 Selectionchanged 尽量在后者中处理代码,注意判断handle的有效性
8、Tab的处理(真假的应用)
所谓真假:区别在于假的tab实际上利用tab的样子(假设存在dw),tab上面没有任何其他控件,dw根据selectedtab的值切换
不同的dw.dataobject来完成类似的处理,方便统一编写处理代码,简化程序,只需做好缩放。真的tab引用对象需要加tab_1.Tabpage_1.对象
不同的dw需要引用不同的tab页,也需要建立多个dw,如果上面有按钮,按钮的引用也很麻烦。总之不易编程。
9、下拉列表的应用
为下拉列表添加数据需要函数一个和用于提取数据的dw,查询条件更容易写
f_add_yplb (ref dropdownlistbox ddlb_yplb);
StringLs_lbbh,Ls_Lbmc //
Integer Li_count,Li_lp //
DataStore Ldts_yplb //datastore
Ldts_yplb=create datastore
Ldts_yplb.dataobject="dddw_xtgl_yplb"
Ldts_yplb.settransobject(sqlca)
Li_count=Ldts_yplb.retrieve()//可以加条件
IF Li_count <= 0 THEN
MessAgeBox('','可以根据情况决定是否提示')
RETURN
END IF
ddlb_yplb.additem('全部'+Space(30)+'对应的编号多数是%')//可以选择,注意ddlb不能设置Sort
FOR Li_lp=1 TO Li_count
Ls_lbbh = Ldts_yplb.object.C_BH
Ls_Lbmc = Ldts_yplb.object.V_MC
ddlb_yplb.additem(Ls_Lbmc+Space(200)+Ls_lbbh)
//Space(200)目的让用户看不见后面的编号便于取值,
//取列表文本Trim(Left(ddlb_1.Text,200)),放心不会取到编号
//取列表值Trim(Right(ddlb_1.Text,200)),放心不会取到文本
NEXT
//默认第一条
ddlb_yplb.SelectItem ( 1 )
DESTROY Ldts_yplb
已学习,谢谢。ding
页:
[1]