复制在GUI Builder将谷歌应用程序标签面板(Replicate tab Panel in G

2019-06-26 13:26发布

我想我已经看到了这个答案,但我不记得在哪里肯定。

我试图创建一个使用GUI生成一个标签式面板接口,但没有看到该选项。 我似乎记得的部分是具有复制,在GUI Builder中的方法的人。 我似乎无法找到我的大脑信息,老谷歌群组或在这里。

有人可以慢跑我的记忆?

谢谢...

Answer 1:

也许你指的职位是这一个? 总之,不管你有多少板有哟可以在GUI设计它们,一个在另一个的上面或(更简单)之一的,彼此在“父”垂直面板和客户端处理器发挥显示/隐藏一个你需要的。 我有一个例子在这里与在UI 2个面板 ,用户界面设计有剧本,但不是重要的,看看客户端处理程序,看看它是如何工作的。

如果我有一些空闲时间,今晚我将做一个演示脚本在GUI ;-) 4个板。

编辑:这是一个测试例子 (独立)或嵌入在谷歌网站 + 链接脚本 (复印一份编辑)

请注意,在GUI构建器you'l要“玩”与每个面板的知名度上班就可以了,我用了一个主面板大到足以容纳2块板在一起,使你可以有面板之间的“和谐”的美好憧憬(这是不是在我的测试的情况下;-))

和代码(非常简单的基本实施例4个与面板它们中的每一个文本框&一个标签,只是为了测试按钮上的处理程序):

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

  var UI=app.loadComponent('multiUi')

  var panel1 = app.getElementById('panel1')
  var panel2 = app.getElementById('panel2')
  var panel3 = app.getElementById('panel3')
  var panel4 = app.getElementById('panel4')

  var Button1 = app.getElementById('Button1')
  var Button2 = app.getElementById('Button2')
  var Button3 = app.getElementById('Button3')
  var Button4 = app.getElementById('Button4')

  var pHandler1 = app.createClientHandler()
  .forTargets(panel1).setVisible(true).forTargets(panel2,panel3,panel4).setVisible(false)
  Button1.addClickHandler(pHandler1)

  var pHandler2 = app.createClientHandler()
  .forTargets(panel2).setVisible(true).forTargets(panel1,panel3,panel4).setVisible(false)
  Button2.addClickHandler(pHandler2)

  var pHandler3 = app.createClientHandler()
  .forTargets(panel3).setVisible(true).forTargets(panel2,panel1,panel4).setVisible(false)
  Button3.addClickHandler(pHandler3)

  var pHandler4 = app.createClientHandler()
  .forTargets(panel4).setVisible(true).forTargets(panel2,panel3,panel1).setVisible(false)
  Button4.addClickHandler(pHandler4)

  app.add(UI)
  return app;
}


Answer 2:

下面的代码让标签,根据你放,动态阵列上:

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

    // set array
    var aTabs = ['donald','katrijn','dagobert'];                                                         

    // create tab panel
    var pTab = app.createTabPanel();                                                

    // add tabs to panel
    for(var k=0; k<pTabs.length; k++) {
      pTab.add(app.createLabel("This tab is reserved for " +  aTabs[k]), aTabs[k]);
    } 

    // add panel to application 
    app.add(pTab); 

    // set focus to first tab                                                                                     
    pTab.selectTab(0);                                                                                   

    // return to application
    return app;
}

见链接为一个tabpanel参考。

发布您的脚本作为web应用程序,允许你插入脚本在谷歌网站。



文章来源: Replicate tab Panel in GUI Builder google apps