开发接口文件名为:sntxmod.h ,其中声明了6个函数。实现这 6 个函数,即可完成在 Word 上添加一个按钮:
// Caption const char * GetCaption();
// Tooltip (可省) const char * GetTooltip();
// Button Face (可省) HBITMAP GetBtnFace();
// Parse void Parse(wchar_t * text, int len);
// Nextpos bool GetNextPos(int & pos,
int & len);
// Color bool GetColor(int & color);
// Bgcolor (可省) bool GetBgColor(int & bgcolor); |
说明:
GetCaption() 函数在插件安装后,第一次打开 Word 时被调用,返回值将用于新添按钮上的文字。
GetTooltip() 函数在插件安装后,第一次打开 Word 时被调用,返回值将用于新添按钮的 Tooltip 文字,当鼠标停留在按钮上放时,这句文字将被显示成提示。
GetBtnFace() 函数在插件安装后,第一次打开 Word 时被调用,要求返回一个 16x16 的位图句柄。返回的 HBITMAP 句柄将用于按钮图片,位图中的紫红色(0xFF00FF,■)将用来表示透明色。
Parse() 函数在点击相应的按钮时被调用,传入的 text 内容为当前所选定的文本,传入 len 为当前选定文本的长度。text 同时也可以通过 '\0' 判断结束。
GetNextPos() 函数在 Parse() 被调用后紧接着被调用多次,直到返回 false 为止。GetNextPos() 应该通过 bool 型返回值,告诉 Word 是否需要继续进行着色;同时,通过引用变量 pos 和 len 告诉 Word 需要本次进行着色的位置和长度。注意,返回的 pos 是位于 Parser() 中传入的 text 中的位置,不是 Word 整篇文章中的位置。当着色操作完成后,GetNextPos() 必须返回 false 。
GetColor() 函数在每次调用 GetNextPos() 返回 true 之后被调用。通过 bool 型返回值,告诉 Word 是否要对文本颜色进行修改;如果要修改,则通过引用变量 color 返回颜色值。
GetBgColor() 函数在每次调用 GetNextPos() 返回 true 之后被调用。通过 bool 型返回值,告诉 Word 是否要对文本背景颜色进行修改;如果要修改,则通过引用变量 bgcolor 返回颜色值。