PB之入门-itemchanged(long row,dwobject dwo,string data)
每天的总结都是必须,好记性不如烂笔头,好吧,一星期没做笔记了,最近忙上PB了,哎东学学西学学,最可怕的就是最后都半斤八两,吐槽一下关于PB的资源为何如此之少,今天记录的是关于itemchanged事件的介绍。
Description:
itemchanged事件在datawindow里的字段被修改并且失去焦点后发生,当然在Update函数被调用之前也会触发这个事件,事件共有三个参数:
long row ,表示当前行
dwobject dwo,表示datawindow里的字段,例dwo.name = “filedname”
string data, 表示new data也就是刚刚输入的数据
Return Values
0 (默认) 接收数据,并转移焦点到下一行
1 拒绝输入的数据,并焦点不转移
2 拒绝数据的输入,但转移焦点到下一行,并且数据不改变,跟修改之前一样
Precautions
当数据窗口本身失去焦点时,是不会触发此事件的
Sample
1: datetime lda_today //pb并不需要 “;”,但是在Disconnect时竟然需要”;”难以理解
2: // today() pb系统函数,得到当天日期; now() pb系统函数,得到时间
3: lda_today = datetime(today(),now())
4: // 相当于switch case 但语法上大同小异 需要注意
5: choose case dwo.name
6: // 字段名称
7: case "stu_info_stu_birthdate"
8: //作判断,控制日期,或其他数据的输入
9: if datetime(data) > lda_today then
10: messagebox("错误!","输入的日期不能超过当前日期")
11: return 2
12: end if
13:
14: case "stu_info_stu_enterdate"
15:
16: if datetime(data) > lda_today then
17: messagebox("错误!","输入的日期不能超过当前日期")
18: return 2
19: end if
20: case "stu_info_stu_phone"
21: if len(data) < 11 then
22: messagebox("错误!","请输入正确的手机号码")
23: return 2
24: end if
25:
26: case else
27:
28: return 0
29: //结束
30: end choose
路过的正在学习pb的,留个粉丝位,互相学习!!!
学会勇敢