- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 GWT 2.4。我想创建一棵具有一组固定顶级节点的树,但在打开每个节点时,会从服务器动态检索数据。我找到了 AsyncDataProvider 类来帮助我,但我无法弄清楚如何使用一组初始值预先填充数据模型。我有这个代码(不工作)...
public class CellTreeExample implements EntryPoint {
/**
* The model that defines the nodes in the tree.
*/
private static class CustomTreeModel implements TreeViewModel {
/**
* Get the {@link NodeInfo} that provides the children of the specified
* value.
*/
public <T> NodeInfo<?> getNodeInfo(T value) {
/*
* Create some data in a data provider. Use the parent value as a prefix
* for the next level.
*/
AsyncDataProvider<String> dataProvider = new AsyncDataProvider<String>() {
@Override
protected void onRangeChanged(HasData<String> display) {
// Execute dynamic logic here.
}
};
// Set a default set of nodes.
TextCell textCell = new TextCell();
final CellList<String> cellList = new CellList<String>(textCell);
final List<String> rootNodes = getRootNodes();
cellList.setRowCount(rootNodes.size(), true);
dataProvider.addDataDisplay(cellList);
// Return a node info that pairs the data with a cell.
return new DefaultNodeInfo<String>(dataProvider, new TextCell());
}
public boolean isLeaf(Object value) {
// some logic
}
}
public void onModuleLoad() {
// Create a model for the tree.
TreeViewModel model = new CustomTreeModel();
/*
* Create the tree using the model. We specify the default value of the
* hidden root node as "Item 1".
*/
CellTree tree = new CellTree(model, "Item 1");
// Add the tree to the root layout panel.
RootLayoutPanel.get().add(tree);
}
当我启动应用程序时,什么也没有出现,并且我已确认初始单元格列表包含 6 个项目。有什么想法为什么他们不显示吗?构建用于 CellTree 的 CellList 时,TextCell 不是正确的类型吗? - 戴夫
最佳答案
// summarizing pseudocode
public <T> NodeInfo<?> getNodeInfo(final T value) {
if(value == null) { // root, return static list of top level nodes
return new DefaultNodeInfo<String<(
new ListDataProvider<String>(Arrays.<String>asList("node1", "node2" ... ));
, new TextCell());
}
else {
AsyncDataProvider<String> dataProvider = new AsyncDataProvider<String>() {
@Override
protected void onRangeChanged(HasData<String> display) {
// Execute dynamic logic here - and fetch data from server or wherever
// call updateRowData() in when data is available
updateRowData(display.getVisibleRange(), /* List<String> results */);
}
}
return new DefaultNodeInfo<String>(dataProvider, new TextCell());
}
}
关于java - GWT:如何使用 AsyncDataModel 填充 CellTree 的初始列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7654089/
CellTree 有一个采用 TreeModel 的构造函数。我无法通过 setter 设置树模型。 我通过异步 rpc 调用获取树的数据,此调用在创建与保存树的 View 相对应的演示者时触发,但这
我想在当前工作的 CellTree 上触发“打开根节点”事件,它现在具有以下行为: @Override public NodeInfo getNodeInfo(final T value)
我有一个 细胞树 它使用 MultiSelectionModel 和 复选框单元 作为复合电池的一部分。这一切似乎都在起作用。 我实际上想要做的是在我的界面中为可以在树中选择的每个项目生成选项卡。听起
在这里,我有一个完整且非常简单的示例来动态添加/删除 单元格树的节点。我的例子效果不佳。好像有 是刷新问题。只有关闭/展开节点才会显示正确的 结果。我也没有在这个论坛中找到任何适合这个问题的答案。 也
我正在使用 GWT CellTree 类,并且希望能够在选择更改时更新页面上的另一个 UI 元素。 我有这个: @UiField (provided = true) CellTree folderTr
我目前正在 GWT 中开发自定义树(扩展 AbstractEListViewer) 我想填充 CellTree与 ListDataProvider ,但我不能像对 CellList 那样做,通过使用
我正在尝试按照基本的 CellTree gwt 示例显示类别树。 我所坚持的是确定类别的“叶子”条件。 当类别没有子项时,它就是“is-a-leaf”,对吗?所以,这是我的类别(我使用 Objecti
我使用了 CellTree,其中我在每个父节点和子节点上使用了包含 CheckBoxCell 的 CompositeCell。 现在我想在选择父节点时选择所有子节点。我怎样才能做到这一点? 以下是我的
我正在使用 GWT CellTree 复杂示例,如 javadoc 中所述.但是要打开树节点,我必须单击节点左侧的小箭头。我想通过单击文本打开树。我搜索了一些帮助,发现我可以使用 ClickableT
假设我有一个类CellTreeWidget ,其中包含 CellTree . 我想写一个与交互的演示者 CellTreeWidget实例和 用于获取数据的远程服务。 数据显示在 CellTreeWid
我正在使用 GWT 2.4。我想创建一棵具有一组固定顶级节点的树,但在打开每个节点时,会从服务器动态检索数据。我找到了 AsyncDataProvider 类来帮助我,但我无法弄清楚如何使用一组初始值
我想要定制 CellTree这将使用基于复选框的单元格(我想使用三态复选框,因此必须编写自定义单元格)。我想选择父节点来选择其所有子节点,并且如果选择了所有子节点,则父节点的复选框也应该被选中。如果不
我是一名优秀的程序员,十分优秀!