我一直在尝试启动我的新网络应用项目。我想首先使用GAS,UI Service开始创建我的主用户界面。
但是在混合到各种类型的面板后,它似乎不起作用。
我到底在做什么。
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;
}
亲切的问候
答案 0 :(得分:2)
Apps脚本UiApp在幕后使用GWT。这里的问题是SplitLayoutPanel(GWT 布局面板)不能与TabPanel(非布局面板)一起使用。我的理解是,第一个要求父母的高度,而父母的高度又要求孩子的身高。没有人会高兴,面板崩溃。
如果我们在Apps脚本中有GWT TabLayoutPanel,它将是您的解决方案。但我们没有,甚至不愿意在问题跟踪器上请求UiApp的任何增强,因为他们(Google Apps脚本团队)多次声明他们不会付出任何努力,因为这样做去的是HtmlService。如果您发现不可行的情况,请在HtmlServices中执行或不使用Apps脚本。
以下是一个很好的解释:为什么这不起作用:gwt ScrollPanel in TabPanel: no vertical scrollbar