我已经用Google Apps脚本编写了一个小程序,可以通过Google表格中的“ UI”借入和上交项目。用户在下拉列表中找到一个项目,输入他们的名称,然后单击一个按钮进行借用。同样,在移交设备时,用户会在另一个下拉菜单中找到要移交的项目,然后单击另一个按钮。
我想要的是在项目被注册为借入或移交时向用户显示某种反馈。问题不是显示消息,而是使其消失。因此,我希望有一种计时器可以在几秒钟后删除通知。
我搜索了一个解决方案,发现我也许可以使用'Utilities.sleep',但是无论我如何构造,它似乎只是等待指定的时间,然后立即执行整个代码。 / p>
我在想这样简单的事情:
var range = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange('B2');
range.setValue('The item was successfully registered!');
Utilities.sleep(3000);
range.clear();
我也查看了“ Lock.waitlock”,但也无法正常工作。我确实看到了这篇文章,但是由于某种原因,它对我不起作用: Set Timeout in Google Apps Scripts
任何帮助将不胜感激。
答案 0 :(得分:1)
完全模仿您的代码
var range = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange('B2');
range.setValue('The item was successfully registered!');
SpreadsheetApp.flush();
Utilities.sleep(3000);
range.clear();
但是对我来说,我认为这是个坏主意。
您可以使用长时间显示的烤面包:
var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
activeSpreadsheet.toast('The item was successfully registered!', 'Automation', -1);
Utilities.sleep(3000);
activeSpreadsheet.toast('All fine! Relax!', 'Automation', 5 * 1000);