4.3 程序设计(部分逻辑及代码) 4.3 创建可视化按钮 copyright paper51.com
内容来自论文无忧网 www.paper51.com
4.3.1要使鼠标指针移动到按钮上方时鼠标指针发生变化,需要在按钮的“MouseMove”事件中添加代码。 paper51.com *————修改控件上鼠标指针形状 http://www.paper51.com LPARAMETERSnButton, nShift, nXCoord, nYCoord 内容来自www.paper51.com This.MousePointer= 99 &&————使用自定义的鼠标指针 http://www.paper51.com This.MouseIcon= "h_point.cur" &&————鼠标指针文件 paper51.com 4.3.2 创建可视化类 内容来自论文无忧网 www.paper51.com 单击【首记录】按钮时,只需要将记录指针移动到表的第一条记录即可,按钮的“Click”事件代码如下: paper51.com GO TOP &&到首记录 copyright paper51.com THISFORM.REFRESH &&刷新表单 paper51.com
单击【上记录】按钮时,首先判断记录指针是否位于第一条记录,如果是,则弹出警告,否则将记录指针向前移动一个位置,该按钮的“click”事件代码如下: 内容来自www.paper51.com *——如果到了数据表首部 内容来自论文无忧网 www.paper51.com IF BOF().OR. RECNO() = 1 内容来自论文无忧网 www.paper51.com MessageBox("已到首记录",48,"移动记录") http://www.paper51.com ELSE http://www.paper51.com *——如果数据指针不位于数据表首部 copyright paper51.com SKIP-1 http://www.paper51.com ENDIF http://www.paper51.com *——刷新表单 内容来自论文无忧网 www.paper51.com THISFORM.REFRESH copyright paper51.com 单击【下记录】按钮代码: http://www.paper51.com *——如果记录指针位于数据表末尾 内容来自www.paper51.com IF EOF() orRecNO() = RecCount() 内容来自论文无忧网 www.paper51.com MessageBox("已到末记录",48,"移动记录") 内容来自论文无忧网 www.paper51.com *——如果记录指针不位于数据表末尾 paper51.com ELSE 内容来自论文无忧网 www.paper51.com
*——记录指针下移 内容来自www.paper51.com SKIP copyright paper51.com ENDIF 内容来自论文无忧网 www.paper51.com *——刷新表单 paper51.com THISFORM.REFRESH() 内容来自论文无忧网 www.paper51.com 单击【末记录】按钮代码: http://www.paper51.com GOBOTTOM &&到数据表末尾 http://www.paper51.com
THISFORM.REFRESH &&刷新表单 copyright paper51.com
“MyMove”类的“Refresh”事件代码如下: 内容来自www.paper51.com
*——如果数据表为空或者只有一条记录 http://www.paper51.com IF BOF().AND. EOF() .OR. RECCOUNT()<=1 http://www.paper51.com
THIS.Cmdtop.ENABLED=.F. 内容来自www.paper51.com THIS.Cmdpre.ENABLED=.F. copyright paper51.com THIS.Cmdnxt.ENABLED=.F. http://www.paper51.com
THIS.Cmdbtm.ENABLED=.F. http://www.paper51.com
ELSE copyright paper51.com *——如果在记录指针在数据表的末尾 paper51.com IF RECNO()=RECCOUNT() .OR. EOF() http://www.paper51.com THIS.Cmdtop.ENABLED=.T. http://www.paper51.com THIS.Cmdpre.ENABLED=.T. copyright paper51.com THIS.Cmdnxt.ENABLED=.F. http://www.paper51.com THIS.Cmdbtm.ENABLED=.F. paper51.com
ELSE copyright paper51.com *——如果记录指针在数据表的首部 http://www.paper51.com
IFRECNO()=1 .OR. BOF() http://www.paper51.com
THIS.Cmdtop.ENABLED=.F. 内容来自论文无忧网 www.paper51.com THIS.Cmdpre.ENABLED=.F. http://www.paper51.com THIS.Cmdnxt.ENABLED=.T. http://www.paper51.com THIS.Cmdbtm.ENABLED=.T. copyright paper51.com
ELSE http://www.paper51.com *——如果记录指针不在数据表的首部也不在尾部 copyright paper51.com THIS.Cmdtop.ENABLED=.T. 内容来自论文无忧网 www.paper51.com THIS.Cmdpre.ENABLED=.T. 内容来自www.paper51.com
THIS.Cmdnxt.ENABLED=.T. paper51.com THIS.Cmdbtm.ENABLED=.T. 内容来自www.paper51.com
ENDIF 内容来自论文无忧网 www.paper51.com ENDIF 内容来自论文无忧网 www.paper51.com ENDIF paper51.com 4.3.3“命令按钮工具栏”类 内容来自论文无忧网 www.paper51.com 【推出】按钮的“Click”事件代码: 内容来自论文无忧网 www.paper51.com LOCALYN http://www.paper51.com YN=Messagebox("确定退出",4+32,"资料管理系统") 内容来自论文无忧网 www.paper51.com IFYN=6 内容来自论文无忧网 www.paper51.com THISFORM.Release http://www.paper51.com ENDIF 内容来自论文无忧网 www.paper51.com
|