扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:邹龙泉 来源:yesky 2007年11月16日
关键字: Visual C++ Notes 打印功能
一 Notes表单结构简介
一个表单中有三个必需的域:$TITLE、$INFO和$BODY,辅助性的还有$FIELDS域及属性为placeholder的各域。
1.$TITLE域
$TITLE域的类型为TYPE_TEXT,其中保存表单的名称,Notes客户端窗口中"创建"菜单下列出的各表单名即为各表单note中$TITLE域的值。在Notes提供的C API头文件"stdnames.h"中有预定义的常量ITEM_NAME_TEMPLATE_NAME代表表单note的名称域,为保证程序的向后兼容,建议使用常量而避免直接使用$TITLE。
2.$INFO域
由于表单和文档的创建有关,$INFO域定义了通过此表单创建的文档的一些属性。实际上$INFO域中存储的是一个名为CDDOCUMENT的结构体,对生成文档属性的设定就是通过对该结构体中各分量的不同赋值实现的。结构体CDDOCUMENT 的定义及说明见Lotus C API 的参考文档。
$INFO域的类型为TYPE_COMPOSITE,对应的预定义常量为ITEM_NAME_DOCUMENT。
3. $BODY域
$BODY域是表单note中的核心域,整个表单显示和打印时的格式,还有通过此表单生成的文档所包含的域及其类型,都是在本域中定义的。由于$BODY域的结构非常复杂,本文将在第二部分专门介绍。$BODY域也是TYPE_COMPOSITE类型的,名称预定义常量为ITEM_NAME_TEMPLATE。
4. $FIELDS域
$FIELDS域是一个TYPE_TEXT_LIST类型的域,其中包含了用此表单生成的文档包含的所有域。但专为打印生成的表单中可以没有此域。
5. "placeholder"域
对$BODY域中定义的将来文档中要含有的每一个域,在表单中都对应一个类型为TYPE_INVALID_OR_UNKNOWN而标志为ITEM_PLACEHOLDER的域,域名和$BODY域中定义的一样,而其值为NULL。
标志为ITEM_PLACEHOLDER的域将被加入到"域名表"中,这样当用户选择了客户端中的"设计"菜单中的"视图"子菜单后,在弹出的对话框中选择"添加域"时,该域名才会被显示出来。
同样,这些域在打印的表单中不是必需的。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者