Class Grid

网格

井然有序的网格,用于显示一组网格项。

var grid = CardService.newGrid()
    .setTitle("My Grid")
    .setNumColumns(2)
    .addItem(CardService.newGridItem()
        .setTitle("My item"));

方法

方法返回类型简介
addItem(gridItem)Grid向网格添加新网格项。
setAuthorizationAction(action)Grid设置一项授权操作,以在点击对象时打开授权流程的网址。
setBorderStyle(borderStyle)Grid设置应用到每个网格项的边框样式。
setComposeAction(action, composedEmailType)Grid设置在用户点击对象时撰写电子邮件草稿的操作。
setNumColumns(numColumns)Grid要在网格中显示的列数。
setOnClickAction(action)Grid设置在用户点击对象时执行的操作。
setOnClickOpenLinkAction(action)Grid设置在用户点击对象时在标签页中打开网址的操作。
setOpenLink(openLink)Grid设置在用户点击对象时打开的网址。
setTitle(title)Grid设置网格的标题文字。

详细文档

addItem(gridItem)

向网格添加新网格项。

参数

名称类型说明
gridItemGridItem要添加的网格项。

返回

Grid - 此对象,用于实现链式连接。


setAuthorizationAction(action)

设置一项授权操作,以在点击对象时打开授权流程的网址。系统会在新窗口中打开该网址。当用户完成授权流程并返回应用时,插件会重新加载。

界面对象只能设置为 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType)

// ...

var action = CardService.newAuthorizationAction().setAuthorizationUrl('url');
CardService.newTextButton().setText('Authorize').setAuthorizationAction(action);

参数

名称类型说明
actionAuthorizationAction用于指定当点击此元素时要执行的授权操作的对象。

返回

Grid - 此对象,用于实现链式连接。


setBorderStyle(borderStyle)

设置应用到每个网格项的边框样式。默认值为 NO_BORDER。

参数

名称类型说明
borderStyleBorderStyle要应用的边框样式。

返回

Grid - 此对象,用于实现链式连接。


setComposeAction(action, composedEmailType)

设置在用户点击对象时撰写电子邮件草稿的操作。界面对象只能设置 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 中的一个。

Action 参数必须指定回调函数,该函数会返回使用 ComposeActionResponseBuilder.setGmailDraft(draft) 配置的 ComposeActionResponse 对象。

// ...

var action = CardService.newAction().setFunctionName('composeEmailCallback');
CardService.newTextButton()
    .setText('Compose Email')
    .setComposeAction(action, CardService.ComposedEmailType.REPLY_AS_DRAFT);

// ...

function composeEmailCallback() {
  var thread = GmailApp.getThreadById(e.threadId);
  var draft = thread.createDraftReply('This is a reply');
  return CardService.newComposeActionResponseBuilder()
      .setGmailDraft(draft)
      .build();
}

参数

名称类型说明
actionAction用于指定当点击此元素时要执行的组合操作的对象。
composedEmailTypeComposedEmailType一个枚举值,用于指定组合草稿是独立草稿还是回复草稿。

返回

Grid - 此对象,用于实现链式连接。


setNumColumns(numColumns)

要在网格中显示的列数。如果显示在右侧面板中,您可以显示 1-3 列,默认值为 1。如果在一个对话框中显示,您可以显示 2-6 列,默认值为 2。

参数

名称类型说明
numColumnsInteger列数。

返回

Grid - 此对象,用于实现链式连接。


setOnClickAction(action)

设置在用户点击对象时执行的操作。界面对象只能设置为 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType)

Action 参数必须指定会返回 ActionResponse 对象的回调函数。

// ...

var action = CardService.newAction().setFunctionName('notificationCallback');
CardService.newTextButton().setText('Create notification').setOnClickAction(action);

// ...

function notificationCallback() {
  return CardService.newActionResponseBuilder()
      .setNotification(CardService.newNotification()
          .setText("Some info to display to user"))
      .build();
}

参数

名称类型说明
actionAction点击此元素时要执行的操作。

返回

Grid - 此对象,用于实现链式连接。


setOnClickOpenLinkAction(action)

设置在用户点击对象时在标签页中打开网址的操作。如果需要构建网址,或者需要在创建 OpenLink 对象时采取其他操作,请使用此函数。界面对象只能设置为 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType)

Action 参数必须指定回调函数,该函数会返回使用 ActionResponseBuilder.setOpenLink(openLink) 配置的 ActionResponse 对象。

// ...

var action = CardService.newAction().setFunctionName('openLinkCallback');
CardService.newTextButton().setText('Open Link').setOnClickOpenLinkAction(action);

// ...

function openLinkCallback() {
  return CardService.newActionResponseBuilder()
      .setOpenLink(CardService.newOpenLink()
          .setUrl('https://www.google.com'))
      .build();
}

参数

名称类型说明
actionAction用于指定当点击此元素时要执行的开放链接操作的对象。

返回

Grid - 此对象,用于实现链式连接。


设置在用户点击对象时打开的网址。如果网址已知且只需要打开,请使用此函数。界面对象只能设置为 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 中的一个。

参数

名称类型说明
openLinkOpenLinkOpenLink 对象,用于描述要打开的网址。

返回

Grid - 此对象,用于实现链式连接。


setTitle(title)

设置网格的标题文字。文本必须是不带格式的纯文本字符串。

参数

名称类型说明
titleString标题文字。

返回

Grid - 此对象,用于实现链式连接。