1

私はこの答えを見たと思いますが、確かにどこにいるのか思い出せません。

GUIビルダーを使用してタブ付きパネルインターフェイスを作成しようとしていますが、そのオプションが表示されません。私が思い出しているのは、GUIビルダーでそれを複製するアプローチを持っている人です。私の脳、古いグーグルグループ、またはここでその情報を見つけることができないようです。

誰かが私の記憶をジョギングできますか?

ありがとうございました...

4

2 に答える 2

2

たぶんあなたが参照していた投稿はこれでしたか?とにかく、パネルの数に関係なく、GUIでパネルを上下に、または(より簡単に)「親」垂直パネルで上下にデザインし、クライアントハンドラーで遊んで表示/非表示にすることができます。必要なもの。ここに、UIに2つのパネルがある例があります。UIはスクリプトを使用して設計されていますが、それは重要ではありません。クライアントハンドラーを見て、どのように機能するかを確認してください。

今夜暇があれば、GUIで4つのパネルのデモスクリプトを作成します;-)。

編集:これはテスト例(スタンドアロン)またはGoogleサイトに埋め込まれています+スクリプトへのリンク(編集するためにコピーを作成します)

GUIビルダーでは、作業するために各パネルの可視性を「再生」する必要があることに注意してください。2つのパネルをまとめるのに十分な大きさのメインパネルを使用したので、パネル間の「調和」をよりよく見ることができます(私のテストではそうではありません;-))

およびコード(ボタンのハンドラーをテストするためだけに、それぞれがtextBoxとLabelを持つ非常に単純な基本例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;
}
于 2012-07-26T13:02:42.897 に答える
0

次のコードは、入力した配列に基づいてタブを動的に作成します。

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リファレンスのリンクを参照してください。

スクリプトをウェブアプリとして公開すると、Googleサイトにスクリプトを挿入できます。

于 2012-08-19T15:36:07.540 に答える