Google apps script 独立webapp和浏览器滚动条
EDIT(last!:-):解决方法是将整个UI放在一个absolutePanel(thx megabyte1024)中。 它并不完美,因为我不能在整个显示区域中使用背景色,但它至少更加舒适。(在线测试应用程序的链接已使用此新版本更新)和最终版本的屏幕截图。。。好多了:-)Google apps script 独立webapp和浏览器滚动条,google-apps-script,Google Apps Script,EDIT(last!:-):解决方法是将整个UI放在一个absolutePanel(thx megabyte1024)中。 它并不完美,因为我不能在整个显示区域中使用背景色,但它至少更加舒适。(在线测试应用程序的链接已使用此新版本更新)和最终版本的屏幕截图。。。好多了:-) 我有一个用GAS编写的独立webapp,它有一个滚动面板,整个UI相当小,只占浏览器窗口中显示区域的一部分(甚至很小) 困扰我的是,我总是在浏览器窗口中同时有一个水平和垂直的滚动条,当我使用鼠标或触摸板在UI窗口中滚动滚
我有一个用GAS编写的独立webapp,它有一个滚动面板,整个UI相当小,只占浏览器窗口中显示区域的一部分(甚至很小) 困扰我的是,我总是在浏览器窗口中同时有一个水平和垂直的滚动条,当我使用鼠标或触摸板在UI窗口中滚动滚动滚动面板时,它会干扰UI内容。。。 所以,我的问题是:有没有办法避免这种情况,告诉浏览器不需要添加滚动条或定义更小的“webapp区域” 请注意,这些滚动条的大小完全独立于UI面板大小,只要最后一个滚动条小于浏览器窗口 这里有一个屏幕截图来说明我所说的(我确实理解这是一个细节,但使用这个应用程序有时会让人不舒服;-)这里还有一个链接到。 我想解决的另一个细节是这个UI上部的字体颜色:这些是我设置为“只读”的文本框,因为我不希望它们是可编辑的(这会给人一种错觉,用户可以修改数据,但事实并非如此),这种只读状态的一个副作用是字体是“灰色的”。。。在这个“假表”上保持相同的外观(除了颜色)时,有没有办法避免这种情况 EDIT:找到了关于文本颜色的第二个问题:
.setStyleAttribute('color','000000')
就这么简单。。。我太傻了,没能早点发现;-)
注2:有趣的是,用GUI builder设计的UI不会遇到同样的问题
EDIT2:以下是doGet部分的代码(修改为无功能运行,但显示):
var key='0anqsfd3iike3dfv3zlf5enziv0jqq0c1a3wx1dqbgc'
var ss=电子表格应用程序.openById(键)
var sh=ss.getSheetByName('Sheet1')
var idx=0
var data=ss.getDataRange().getValues();
var len=data.length;
var scrit=[“所有字段”、“姓名”、“姓氏”、“邮政地址”、“邮政编码”、“城市”、“国家”、“电子邮件”、“电话”]
//公开版本
函数doGet(){
var app=UiApp.createApplication().setTitle(“浏览器列表测试”)
.setHeight(420).setWidth(800).setStyleAttribute(“背景色”、“米色”).setStyleAttribute(“填充”、“20”);
var title=app.createHTML('DATABASE User Interface')。setStyleAttribute('color','#88888');
应用程序添加(标题);
var scroll=app.createScrollPanel().setPixelSize(750150)
var vpanel=app.createVerticalPanel();
var cell=新数组();
变量cellWidth=[45135150250,50100]
var row=新数组();
var cHandler=app.createServerHandler('showpicked').addCallbackElement(滚动);
对于(vv=0;vv消除滚动条的可能解决方案是使用中间Absolute
面板。以下代码包含滚动条
function doGet() {
var app = UiApp.createApplication();
var panel = app.createScrollPanel().setSize('100%', '100%');
var content = app.createButton('Scroll Bars').setSize('100%', '100%');
panel.setWidget(content);
app.add(panel);
return app;
}
下面的代码没有滚动条
function doGet() {
var app = UiApp.createApplication();
var panel = app.createScrollPanel().setSize('100%', '100%');
var subPanel = app.createAbsolutePanel().setSize('100%', '100%');
var content = app.createButton('No Scroll Bars').setSize('100%', '100%');
subPanel.add(content);
panel.setWidget(subPanel);
app.add(panel);
return app;
}
在谷歌网站中嵌入HTMLService web应用程序时,iFrame小工具看起来必须比应用程序高度大50像素,垂直滚动条才能消失。假设UiApp也有同样的情况。谢谢你的建议。不幸的是,我试图应用我的代码,但似乎不起作用……我发布了这条消息在我的问题中,我不想作为一个编辑,如果你觉得“勇敢”,你能建议一个可能的结构吗?(我发布了我的原始版本,因为我的尝试没有成功;-)(如果你不想进入这个领域,我会理解你!!!)谢谢anyway@Sergeinsas.试图使用您的脚本。有文档0AnqSFd3iikE3dFV3ZlF5enZIV0JQQ0c1a3dWX1dQbGc丢失(可能已被删除?
错误消息。哦,对不起,我忘了共享它…我现在就做;-)您好,我终于得到了与您的建议一起使用的文档,请参阅更新的问题。谢谢:-)
function doGet() {
var app = UiApp.createApplication();
var panel = app.createScrollPanel().setSize('100%', '100%');
var subPanel = app.createAbsolutePanel().setSize('100%', '100%');
var content = app.createButton('No Scroll Bars').setSize('100%', '100%');
subPanel.add(content);
panel.setWidget(subPanel);
app.add(panel);
return app;
}