User interface FormPanel类:如何添加文本框名称(不在其内部,而是在左侧)并对按钮进行排序?
我创建此google应用程序脚本formPanel: 使用此代码:User interface FormPanel类:如何添加文本框名称(不在其内部,而是在左侧)并对按钮进行排序?,user-interface,google-apps-script,User Interface,Google Apps Script,我创建此google应用程序脚本formPanel: 使用此代码: function getClemencyParameters() { var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); var app = UiApp.createApplication(); var form = app.createFormPanel().setTitle("My text box visible title"); va
function getClemencyParameters() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var app = UiApp.createApplication();
var form = app.createFormPanel().setTitle("My text box visible title");
var flow = app.createFlowPanel();
flow.add(app.createTextBox().setName("textBox").setText("SetText"));
flow.add(app.createTextBox().setName("textBox2").setTitle("SetTitle"));
flow.add(app.createTextBox().setName("textBox3"));
flow.add(app.createTextBox().setName("textBox4"));
flow.add(app.createListBox().setName("listBox").addItem("option 1").addItem("option 2"));
flow.add(app.createListBox().setName("listBox").addItem("option 1").addItem("option 2"));
flow.add(app.createListBox().setName("listBox").addItem("option 1").addItem("option 2"));
flow.add(app.createSubmitButton("Submit"));
form.add(flow);
app.add(form);
spreadsheet.show(app);
}
但是我想在每个文本框的左侧放置一个标签(它没有方法
createLabel
),并将每个文本框放置在另一个文本框的下方。如何添加文本框名称(不在其内部,而是在左侧)并对按钮进行排序?(在textBox和formPanel类文档中,我没有找到任何内容)选择使用垂直和水平面板是否是您可以接受的解决方案,或者是否有任何特殊原因不这样做?如果不是,这里有一个简单的解决方案:
function doGet(){
var app = UiApp.createApplication();
var panel = app.createVerticalPanel(); // you can embed that in a form panel
var qZeroPanel = app.createHorizontalPanel();
var txt = app.createTextBox().setId("qZero").setName("qZero").setValue("test");
qZeroPanel.add(app.createLabel("question zero':")).add(txt);
var qOnePanel = app.createHorizontalPanel();
qOnePanel.add(app.createLabel("question one:")).
add(app.createListBox().
addItem("anwser 1").
addItem("answer 2").
addItem("answer 3").
setName("qOne"));
var qTwoPanel = app.createHorizontalPanel();
qTwoPanel.add(app.createLabel("question two:")).add(app.createListBox().addItem("anwser 1").addItem("answer 2").addItem("answer 3").setName("qTwo"));
var handlerBut = app.createServerHandler("butAnswer").addCallbackElement(panel);
var but = app.createButton("submit").setId("submitButton").addClickHandler(handlerBut);
panel.add(qZeroPanel).add(qOnePanel).add(qTwoPanel).add(but).add(app.createLabel().setId("answer"));
app.add(panel);
return(app);
}
function butAnswer(e){
var qOne = e.parameter.qOne;
var qZero = e.parameter.qZero;
var qTwo = e.parameter.qTwo;
var app = UiApp.getActiveApplication();
app.getElementById("answer").setText("you entered: qZero: "+qZero+", qOne: "+qOne+", qTwo: "+qTwo);
return(app);
}
希望它能帮助你,Harold使用flowpanel有什么特殊原因吗?为什么不是网格或柔性面板?没有特殊原因。你认为什么更合适@Sergeinsas,你能在触发问题上再给我一个提示吗?谢谢你,哈罗德!