1

Ui サービスのデッキ パネルに関連する GAS のドキュメントを読んだ後、デッキ パネルに要素を追加すると非表示になり、要素を削除すると再び表示されることがわかりました。テスト コードをいくつか書きましたが、デッキ パネルからパネルを削除したときに、パネルを表示することができません。洞察はありますか?

コードは次のとおりです。

function doGet() {
    var app = UiApp.createApplication();
    var globalPan = app.createAbsolutePanel();
    app.add(globalPan);   
    var deckPanel = app.createDeckPanel().setId('deck').setSize(300, 300).setTitle('DeckPanel').setAnimationEnabled(true);
    globalPan.add(deckPanel);
    globalPan.add(app.createHorizontalPanel().add(app.createLabel('Element to add to DeckPanel')).setId('visiblePan'));
    var hidden = app.createHidden('hEl', 'visible').setId('hEl').setName('hEl');
    app.add(hidden);
    app.add(app.createButton('Add to DeckPanel').setId('button').addClickHandler(app.createServerHandler('handlerFunction').addCallbackElement(hidden)));
   return app;
}

function handlerFunction(eventInfo) {
    var app = UiApp.getActiveApplication();
    var parameter = eventInfo.parameter;
    var state = parameter.hEl;
    if (state == 'visible'){
        app.getElementById('deck').add(app.getElementById('visiblePan')); 
        app.getElementById("button").setText("Remove from DeckPanel");
        app.getElementById('hEl').setValue('hidden');
    };
    else{
        app.getElementById('deck').remove(0);
        app.getElementById("button").setText("Add to DeckPanel");
        app.getElementById('hEl').setValue('visible'); 
    };
    return app;
}
4

0 に答える 0