VFP初学者教程:规范的主程序设计
5星 · 超过95%的资源 需积分: 17 26 浏览量
更新于2024-09-11
2
收藏 29KB DOC 举报
"该资源提供了一个规范的Visual FoxPro (VFP)主程序示例,适合初学者学习如何编写和组织程序。主程序名为`main.prg`,它是整个系统执行的起点,位于指定的程序目录下。"
在VFP编程中,一个规范的主程序通常包括以下几个关键步骤:
1. **错误处理**:
- 使用`SetEscapoff`关闭错误逃逸,确保程序在遇到错误时能执行预定义的错误处理程序`Err.PRGWithError()`。`Message()`、`Message(1)`、`Program()`和`Lineno(1)`参数提供了错误信息的详细描述。
2. **环境清理**:
- `CloseAll`命令用于关闭所有工作区中的数据库、表和索引,然后选择工作区1作为默认工作区,确保干净的运行环境。
- `ClearMenus`清除所有内存变量、数组、用户自定义菜单,以及释放与外部DLL的关联,以释放内存资源。
3. **系统菜单管理**:
- `SetSysmenuSave`记录当前系统菜单状态,以便在需要时恢复。
- `SetSysmenuOff`禁用Visual FoxPro的主菜单栏,可能为了自定义或独立的用户界面。
- `SetSysmenuTo`可以用来切换到特定的系统菜单配置。
4. **环境设置**:
- `SetAutosaveOn`启用自动保存功能,确保数据在程序异常退出时不会丢失。
- `SetCarryOff`禁止在文本框中通过输入最后一个字符自动退出。
- `SetConfirmOff`关闭某些操作(如删除)的确认提示。
- `SetCenturyOff`设置日期不显示世纪部分,即只显示年份的后两位。
- `SetDateAnsi`将日期格式设置为国际标准"YY.MM.DD"。
- `SetDeleteOn`允许显示已删除的记录,这对于查看历史数据很有用。
- `SetMultilocksOn`启用多记录锁定,适用于多用户环境。
- `SetNullOn`处理NULL值,确保ATLTERTABLE、CREATETABLE和INSERT-SQL命令考虑NULL值。
- `SetNullDisplayTo''`设定空值(NULL)显示为空字符串。
- `SetSafetyOff`在覆盖文件前不显示警告对话框,增加程序自动化程度。
- `SetStatusBarOff`隐藏图形状态栏,使界面更简洁。
5. **程序路径设置**:
- 定义全局变量`gcMainPath`存储程序主目录,使用`Sys(5)`获取驱动器号,`Sys(2003)`获取当前路径,组合成完整路径。
- `SetDefaultTo`将指定路径设为默认路径,这样后续的文件操作将基于这个路径。
这个主程序模板展示了VFP程序的基础结构和良好实践,它帮助开发者规范代码,确保程序的稳定性和可维护性。通过理解并应用这些设置,初学者可以更好地掌握VFP的环境管理和错误处理机制,从而编写出更专业、更可靠的程序。
157 浏览量
155 浏览量
2024-11-05 上传
232 浏览量
103 浏览量
2024-11-05 上传
160 浏览量
yuezhenxingjyjzsb
- 粉丝: 1
- 资源: 1
最新资源
- 10-Days-of-[removed]该存储库包含针对Hackerrank的10天Javascript挑战的代码解决方案
- 初级java笔试题-jwasham:杰瓦萨姆
- commons-net-jar包.zip
- seed-datepicker:Seed框架的可自定义的datepicker组件
- Bloc_Api_token
- lxdfile:LXD容器的类似于Dockerfile的文件格式
- 蔬菜品种的分类——果菜类
- Unity 2018.1 中文手册 中文文档
- pugsql:一个受HugSQL启发的Python数据库库
- 人机交互项目
- abpMVC.zip
- 生鲜商品:超市生鲜食品经营要求
- Shipped.io Iraq-crx插件
- Machine-Learning-Project:机器学习天气对酒点的影响
- ENV Alert - 本番環境で警告表示-crx插件
- lain:Rust内置的Fuzzer框架