如果我创建如下所示的 DynamicForm,DynamicForm 的 FormItem 将放置在 2 行上。我原以为他们会排成一排。位置分布如下:第一列 20 px,第二列 250 px,其余第三列。
final DynamicForm df = new DynamicForm();
FormItem[] fi = new FormItem[3];
// filling the list with one CheckboxItem, one TextItem and one SelectItem
df.setColWidths("20", "250", "*");
df.setNumCols(3);
df.setFields(fi);
结果如下所示:
我想将所有 FormItem 放在一行中。
最佳答案
Basically title of form item also takes one column. If you do want to show the title also then it will double the column count.
有关更多信息,请查看 DynamicForm#setColWidths() .
根据您的评论:
//filling the list with one CheckboxItem, one TextItem and one SelectItem?
试试这个:
final DynamicForm df = new DynamicForm();
// FormItem[] fi = new FormItem[3];
// filling the list with one CheckboxItem, one TextItem and one SelectItem
CheckboxItem ci = new CheckboxItem();
ci.setShowTitle(false);
ci.setTitle("");
TextItem ti = new TextItem();
ti.setShowTitle(false);
SelectItem si = new SelectItem();
si.setShowTitle(false);
si.setValues("PDF");
df.setItems(ci, ti, si);
df.setColWidths("20", "250", "*");
df.setNumCols(3);
// df.setFields(fi);
RootPanel.get().add(df);
快照:
根据您的快照:
试试这个
final DynamicForm df = new DynamicForm();
// FormItem[] fi = new FormItem[3];
CheckboxItem ci = new CheckboxItem();
ci.setShowTitle(false);
ci.setTitle("");
SelectItem si = new SelectItem();
si.setTitle("LANGUAGE");
si.setValues("PDF");
df.setItems(ci, si);
df.setColWidths("20", "250", "*");
df.setNumCols(3);
// df.setFields(fi);
RootPanel.get().add(df);
快照:
关于java - smartgwt - DynamicForm 相对列宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23201528/