-
gxt tree ComboBox 问题5
本人尝试自己创建一个gxt treeComboBox控件,思路是参照ext treecombobox遇到了困难,困难是TreePanel已经显示出来,但无法点击树的节点,点击后下位框自动关闭gxt版本是:2.1
代码是:
public class TreeSelector extends ComboBox {
TreePanel tree;
public TreeSelector(String topColumnId, String topColumnName) {
List<ModelData> result = new ArrayList<ModelData>();
ModelData md = new BaseModelData();
md.set("id", "");
md.set("value", "");
result.add(md);
ListStore<ModelData> store = new ListStore<ModelData>();
store.add(result);
this.setStore(store);
this.setSelectedStyle("");
this.setFieldLabel(LangUtil.getString("所在地区"));
this.setShadow(false);
this.setEditable(false);
this.setMaxHeight(200);
//this.setDisplayField("name");
this.setTriggerAction(ComboBox.TriggerAction.ALL);
this.setSimpleTemplate("<tpl for='.'><div style='height:200px'><div id='tree1'></div></div></tpl>");
createTeePanel(topColumnId, topColumnName);
bind();
}
private void createTeePanel(String topColumnId, String topColumnName) {
String treeLoadUrl = "../modules/base/selectColumnLoad.jsp";
treeLoadUrl = treeLoadUrl + "?topColumnId=" + topColumnId;
RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, treeLoadUrl);
builder.setHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
HttpProxy proxy = new HttpProxy(builder);
ModelType type = new ModelType();
type.setRoot("records");
type.setTotalName("total");
type.addField("id");
type.addField("title");
type.addField("name");
type.addField("parent");
type.addField("columntype");
type.addField("hasChildren");
type.addField("icon");
JsonReader reader = new JsonReader(type);
TreeLoader loader = new BaseTreeLoader(proxy, reader) {
public boolean hasChildren(ModelData parent) {
return true;
}
};
TreeStore<BaseModelData> store = new TreeStore<BaseModelData>(loader);
store.setKeyProvider(new ModelKeyProvider<BaseModelData>() {
public String getKey(BaseModelData model) {
return model.<String>get("id");
}
});
BaseModelData rootNode = new BaseModelData();
rootNode.set("id", topColumnId);
rootNode.set("name", topColumnName);
//store.add(rootNode, true);
tree = new TreePanel<BaseModelData>(store);
tree.setDisplayProperty("name");
TreeStyle treeStyle = new TreeStyle();
treeStyle.setLeafIcon(GXT.IMAGES.grid_columns());
tree.setStyle(treeStyle);
}
private void bind() {
this.addListener(Events.Expand, new Listener<FieldEvent>() {
public void handleEvent(FieldEvent fieldEvent) {
try {
tree.render(DOM.getElementById("tree1"));
} catch (Exception e) {
MessageBox.alert(LangUtil.getString("系统消息"), e.getMessage(), null);
}
}
});
tree.getSelectionModel().addSelectionChangedListener(new SelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
ModelData m = selectionChangedEvent.getSelectedItem();
MessageBox.alert(LangUtil.getString("系统消息"), "---" + m, null);
}
});
}
}2010年3月26日 22:21
目前还没有答案
相关推荐
"GXT Cascade ComboBox Samples"指的是使用GXT库中的级联下拉框(Cascade ComboBox)组件进行的示例代码。 级联下拉框是一种特殊的控件,它允许用户从一系列相关的选项中进行选择,通常这些选项是层次化的。例如,...
GXT 下拉树(Combo Tree)基本实现GXT 下拉树(Combo Tree)基本实现GXT 下拉树(Combo Tree)基本实现GXT 下拉树(Combo Tree)基本实现GXT 下拉树(Combo Tree)基本实现GXT 下拉树(Combo Tree)基本实现GXT 下拉树(Combo ...
GXT提供了大量的组件,如表格(Grid)、树(Tree)、表单(Form)、菜单(Menu)等。API文档详细介绍了这些组件的创建、配置和使用方法,包括它们的属性、事件和方法。开发者可以通过查阅文档来了解如何实现特定...
**GXT项目详解** GXT,全称是GWT eXtensions,是Sencha公司为Google Web Toolkit(GWT)开发的一套丰富的用户界面组件库。GXT项目旨在为Web应用程序提供桌面级别的用户体验,利用JavaScript和HTML5技术,使得在...
- **实际项目示例**:通过分析几个实际项目,深入理解如何将学到的知识应用于解决真实世界的问题。 6. **最佳实践与调试技巧** - **代码规范**:推荐编写高质量GXT代码的最佳实践。 - **调试与测试**:介绍常用...
从给定的内容来看,这篇“gxt初学进阶教程”主要介绍了一个基于GWT(Google Web Toolkit)的扩展工具库ExtGWT,也被称作GXT,用于帮助Java程序员在Web开发中创建富客户端应用程序。以下是根据提供的文件内容总结出的...
9. **help-doc.html**:帮助文档,提供了使用GXT API的指导和常见问题解答。 二、GXT API关键组件与功能 1. **组件库**:GXT提供了大量的UI组件,如表格(Grid)、树形视图(Tree)、菜单(Menu)、对话框(Dialog...
**GXT软件包和API详解** GXT,全称为GWT Ext,是基于Google Web Toolkit (GWT) 的一个强大的Java UI库。它为开发者提供了丰富的用户界面组件和功能,使得构建复杂的、企业级的Web应用程序变得更加便捷。GXT不仅在...
**标题:“GXT组件使用教程”** GXT(Ext GWT)是Sencha公司开发的一个强大的JavaScript库,用于构建富互联网应用程序(Rich Internet Applications,RIAs)。它基于Google的GWT(Google Web Toolkit),提供了丰富...
标题中的"Gxt"指的是Sencha GXT,这是一个基于Google Web Toolkit (GWT) 的Java库,专门用于构建富互联网应用程序(Rich Internet Applications, RIA)。GXT提供了丰富的组件、数据绑定、布局管理以及主题定制等功能...
9. **社区支持**:由于GXT是一个开源项目,它拥有活跃的社区和丰富的文档资源,开发者可以在遇到问题时寻求帮助或参考示例代码。 10. **版本升级**:尽管GXT已经发展到了更高的版本,如GXT 4.x,但理解老版本的特性...
- **备份原文件**:在修改GXT文件之前,最好先备份原始文件,以防万一出现问题,可以轻松恢复。 - **遵循版权规定**:虽然可以自定义游戏文本,但必须遵守游戏的版权条款,避免非法分享或商业用途。 - **技术要求*...
- **浏览器兼容性与调试**:推荐使用Chrome浏览器,对于Firefox用户,建议不要使用过高的版本,避免GWT插件安装失效的问题。首次运行GWT程序时,浏览器会下载必要的插件,确保调试和编译过程顺利进行。 #### 结论 ...
在`Libraries`选项卡中,点击`Add External JARs`,导航到你的GXT SDK安装目录,选择`gxt-x.x.x-client.jar`(x.x.x代表你的GXT版本号)添加进来。 4. **创建GXT模块**:打开`src/main/java`目录下的`...
尽管GXT的工具相对较少,但其官方文档详尽,且社区活跃,开发者可以通过查阅文档或参与社区讨论来解决遇到的问题。 综上所述,GXT 2.2.5作为一个强大的GWT扩展库,不仅提供了丰富的UI组件和功能,还在性能、稳定性...
浪曦原创]GXT系列+第1讲+GXT_GWT的安装.
GWT(Google Web Toolkit)和GXT(EXT GWT)是两个重要的Java开发框架,用于构建富互联网应用程序(RIA)。GWT是由Google开发的一个开源工具,它允许开发者使用Java语言来编写前端用户界面,然后自动将Java代码编译...
GXT(Ext GWT)是Sencha公司推出的一个强大的JavaScript库,专为构建富互联网应用程序(RIA)设计,尤其在企业级应用中广泛使用。它基于Google的GWT(Google Web Toolkit),允许开发者使用Java语言编写客户端代码,...
同时,需要注意处理错误和安全问题,如文件类型限制、大小检查、防止跨站脚本攻击(XSS)等。 文件上传是GWT和GXT中常见的功能,通过以上方法,开发者可以创建出用户友好的文件上传界面,并实现与服务器的数据交换...
这是GTA4里的源文件american.gxt