我有一个简单的应用程序,用户按下按钮并显示欢迎信息。我需要在几秒钟之后隐藏此消息(标签),比如5秒。 我在谷歌应用程序脚本中找不到类似setTimeout()的函数。
有人能说出我是如何实现这个的吗?
(正如你所看到的,不是一位经验丰富的程序员)。
谢谢!
答案 0 :(得分:3)
可能的解决方案。逻辑是有两个按钮点击处理程序。第一个标签可见,第二个标签睡5秒后隐藏标签。
function doGet(e) {
var app = UiApp.createApplication();
var panel = app.createVerticalPanel();
var btn = app.createButton().setText('Test');
var lblVisible = app.createLabel('Visible Test').setVisible(false).setId('lblVisible');
panel.add(btn);
panel.add(lblVisible);
var handler = app.createServerHandler('onBtnClick');
var handlerWait = app.createServerHandler('onWaitEvent');
handler.addCallbackElement(panel);
handlerWait.addCallbackElement(panel);
btn.addClickHandler(handler);
btn.addClickHandler(handlerWait);
app.add(panel);
return app;
}
function onWaitEvent(e) {
Utilities.sleep(5 * 1000);
var app = UiApp.getActiveApplication();
var lblVisible = app.getElementById('lblVisible');
lblVisible.setVisible(false);
return app;
}
function onBtnClick(e) {
var app = UiApp.getActiveApplication();
var lblVisible = app.getElementById('lblVisible');
lblVisible.setVisible(true);
return app;
}
答案 1 :(得分:1)
进度指示器解决方案等,这是有效的。它可以让你链接事件,我已经多次使用它了。
随时随地更新小部件值。 productforums.google.com/d/topic/apps-script/lABoP-cJcGQ / ...