Skip to content

自定义工具栏添加按钮

AddCustomToolButton

语法

javascript
AddCustomToolButton(ButtonText, ImgIndex, ButtonIndex)

功能

为自定义工具栏添加按钮。

参数

名称必选/可选数据类型说明
ButtonText必选string设定按钮上显示的文字
ImgIndex必选long设定按钮上面的图像
ButtonIndex可选long按钮排序序号

返回值

数值型。返回的是按钮在自定义工具栏上面的索引,可以用于设定指定按钮的状态,或者在事件处理程序中标识按钮。

说明

为自定义工具栏添加按钮。

  • 参数ButtonText:如果设置为""字符串则为不显示字符串
  • 参数ImgIndex:只能设置内部拥有的图片,传入的是图片索引。

目前内置15张图片,分别如下:

索引功能索引功能
0拷贝8粘贴
1剪切9打印
2删除10打印预览
3新建文件11属性
4打开文件12重做
5文件保存13替换
6搜索14撤销
7帮助

示例代码

javascript
// 添加带文字和图片的按钮
OCX_OBJ.AddCustomToolButton("新建(0)", -1);
OCX_OBJ.AddCustomToolButton("word", 0);
OCX_OBJ.AddCustomToolButton("", 0);
OCX_OBJ.AddCustomToolButton("拷贝(1)", -1);
OCX_OBJ.AddCustomToolButton("", 1);
OCX_OBJ.AddCustomToolButton("剪切(2)", -1);
OCX_OBJ.AddCustomToolButton("", 2);
OCX_OBJ.AddCustomToolButton("保存(3)", -1);
OCX_OBJ.AddCustomToolButton("", 3);
OCX_OBJ.AddCustomToolButton("另存为(4)", -1);
OCX_OBJ.AddCustomToolButton("", 4);

注意:目前Linux版本文档控件中,AddCustomToolButton方法暂时不支持ImgIndex内置图片参数,可直接忽略

SetCustomToolButtonStatus

语法

javascript
SetCustomToolButtonStatus(ButtonIndex, IsEnable, IsVisible)

功能

设定自定义工具栏上面按钮的状态。

参数

名称必选/可选数据类型说明
ButtonIndex必选long指定设置的buttonIndex
IsEnable必选bool设定指定的按钮是否可用
IsVisible必选bool设定指定的按钮是否显示

返回值

无返回值。

说明

设定自定义工具栏上面按钮的状态。

  • 参数ButtonIndex:在调用AddCustomToolButton创建的时候得到。
  • 参数IsEnable:传True是可用,False为不可用
  • 参数IsVisible:传True是显示,False是不显示

示例代码

javascript
// 设置按钮状态
var buttonIndex = OCX_OBJ.AddCustomToolButton("新建", 3);
OCX_OBJ.SetCustomToolButtonStatus(buttonIndex, true, true);  // 启用并显示按钮
OCX_OBJ.SetCustomToolButtonStatus(buttonIndex, false, true); // 禁用但显示按钮
OCX_OBJ.SetCustomToolButtonStatus(buttonIndex, true, false); // 启用但隐藏按钮

完整示例

javascript
// 创建自定义工具栏按钮
function createCustomToolbar() {
    // 添加各种功能按钮
    var newButton = OCX_OBJ.AddCustomToolButton("新建", 3);
    var openButton = OCX_OBJ.AddCustomToolButton("打开", 4);
    var saveButton = OCX_OBJ.AddCustomToolButton("保存", 5);
    var copyButton = OCX_OBJ.AddCustomToolButton("", 0);  // 只显示图标
    var pasteButton = OCX_OBJ.AddCustomToolButton("", 8); // 只显示图标
    
    // 设置按钮状态
    OCX_OBJ.SetCustomToolButtonStatus(newButton, true, true);
    OCX_OBJ.SetCustomToolButtonStatus(openButton, true, true);
    OCX_OBJ.SetCustomToolButtonStatus(saveButton, false, true); // 禁用保存按钮
    OCX_OBJ.SetCustomToolButtonStatus(copyButton, true, true);
    OCX_OBJ.SetCustomToolButtonStatus(pasteButton, true, true);
}

// 动态控制按钮状态
function toggleSaveButton(enable) {
    var saveButtonIndex = 2; // 假设保存按钮的索引是2
    OCX_OBJ.SetCustomToolButtonStatus(saveButtonIndex, enable, true);
}

注意事项

  1. 图片索引限制:ImgIndex参数只能使用内置的15张图片(索引0-14)
  2. Linux版本限制:Linux版本文档控件中,AddCustomToolButton方法暂时不支持ImgIndex内置图片参数
  3. 按钮索引:AddCustomToolButton返回的按钮索引用于后续的SetCustomToolButtonStatus操作
  4. 空字符串:ButtonText设置为空字符串""时,按钮只显示图标不显示文字
  5. 按钮排序:ButtonIndex参数可以控制按钮在工具栏中的显示顺序