我在 Google 云端硬盘中创建了一个电子表格,并使用 Google 演示文稿制作了一个教程演示文稿,向用户演示如何使用该电子表格以及为什么它比我们之前的方式更好。
我想要的是在打开电子表格时出现一个消息框,询问该人是否已经观看了教程演示文稿。如果用户单击“否”,我想在浏览器中打开一个新页面以向他们显示我已发布的演示文稿,或者在自定义 UI 中显示演示文稿。
我已经搜索了几个小时但无法弄清楚。这可能吗?感谢您的帮助!
我是论坛新手,所以如果我发布的内容有误,请告诉我。谢谢!
最佳答案
像这样的事情做得很好。
我使用了一个假按钮来保持“外观和感觉”与其他按钮一致,我只是在其顶部添加了不可见的链接;-)
function alertLink() {
var doc = SpreadsheetApp.getActiveSpreadsheet();
var app = UiApp.createApplication().setTitle('Message').setHeight('100').setWidth('400');
var panel = app.createVerticalPanel().add(app.createHTML('Did you see my beautiful <b>Tutorial</b> ?'));
var grid = app.createGrid(1,2).setWidth('400');
var closeHandler = app.createServerHandler('close');
var b1 = app.createButton("NO and I'd like to").setTitle('go to the tutorial in a new tab');
var b2 = app.createButton("YES and I don't want to see it again",closeHandler).setTitle('close this window');
var link = app.createAnchor('XXXXXXXXXX','http://www.google.com').setStyleAttributes({'zIndex':'1' , 'position':'fixed' , 'top':'25' , 'left':'20', 'color':'transparent' }).setTitle('go to the tutorial in a new tab');
var G1 = app.createVerticalPanel().add(b1).add(link);
grid.setWidget(0,0,G1).setWidget(0,1,b2);
app.add(panel).add(grid)
doc.show(app)
}
function close(){
return UiApp.getActiveApplication().close();
}
如果您希望在电子表格打开时自动执行,只需使用 onOpen
触发器即可。 (或将主函数重命名为 onOpen()
)
它是这样的:
关于google-apps-script - 如何使用 google apps 脚本打开网络浏览器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18151564/