0

我一直在尝试开始我的一个新的网络应用程序项目。我想首先使用 GAS,UI 服务开始制作我的主用户界面。

但是在混合到面板类型之后,它似乎不起作用。

我到底做错了什么。

function doGet() {
  var app = UiApp.createApplication();

  var westPanel = app.createVerticalPanel()
  .add(app.createButton("Button 1"))
  .add(app.createButton("Button 2"))
  .add(app.createButton("Button 3"));

  var centerPanel = app.createVerticalPanel()
  .add(app.createHTML('Some Text.....'));

  var splitPanel = app.createSplitLayoutPanel()
  .addWest(westPanel, 150)
  .add(centerPanel)
  .setHeight('100%').setWidth('100%');

  var tabPanel = app.createDecoratedTabPanel()
  .add(splitPanel, 'Finances')
  .setHeight('100%').setWidth('100%');

  app.add(tabPanel);

  return app;
}

亲切的问候

4

1 回答 1

2

Apps 脚本 UiApp 在幕后使用 GWT。这里的问题是 SplitLayoutPanel(一个 GWT布局面板)不适用于 TabPanel(一个非布局面板)。我的理解是,第一个要求父母的身高,而父母的身高又要求孩子的身高。没有人高兴,面板崩溃了。

如果我们在 Apps Script 中有 GWT TabLayoutPanel,那将是您的解决方案。但是我们没有,甚至也没有在问题跟踪器上请求对 UiApp 进行任何增强,因为他们(Google Apps 脚本团队)多次表示他们不会为此付出任何努力,因为方式去的是HtmlService。如果您发现不可行的情况,请在 HtmlServices 中执行或不要使用 Apps 脚本。

这是为什么这不起作用的一个很好的解释:TabPanel中的gwt ScrollPanel:没有垂直滚动条

于 2013-11-02T01:01:41.560 回答