extjs Combox下拉GridPanel菜单
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = wroot+'ext-3.2.0/resources/images/default/s.gif';
//
var data=[['1','非诚勿扰'],['2','让子弹飞'],['3','锦衣卫'],['4','狄仁杰4']];
// 控制gridpanel 列表行 为只能选择一行
var rsm = new Ext.grid.RowSelectionModel({ singleSelect:true });
var store = new Ext.data.Store({
autoDestroy: true,
proxy:new Ext.data.MemoryProxy(data),
reader:new Ext.data.ArrayReader({},[
{name:'mid'},
{name:'mname'}
])
});
var grid = new Ext.grid.GridPanel({
width:600,
height: 200,
frame: true,
border:true,
//enableHdMenu:false,
store: store,
enableColumnMove:false, //支持列移动
enableColumnResize:true,
autoExpandColumn : true,
trackMouseOver : true,
viewConfig:{
forceFit:true
},
sm:rsm ,
tbar:[{text:'确定一'},'-',new Ext.form.TextField({id: 'paramCnName',width:60}),{text:'查找一'}],
cm: new Ext.grid.ColumnModel([
new Ext.grid.RowNumberer(),
{header:'编号',dataIndex:'mid', sortable: true},
{header:'姓名',dataIndex:'mname', sortable: true}
]),
// 远程数据 才有效果
bbar:new Ext.PagingToolbar({
pageSize:10,
store:store,
displayInfo:true,
displayMsg:'显示第{0} 条 到 {1} 条记录,一共{2}条',
emptyMsg:'无记录'
}),
listeners:{
rowdblclick:function(grid , rowIndex ,e){
showMenu .hide();
var rowOptions = grid.getSelectionModel().getSelections();
for(var i=0; i< rowOptions.length; i++){
var uid = rowOptions[i].get('mid');
var uname = rowOptions[i].get('mname');
comb.setValue(uid);
comb.setRawValue(uname);
}
}
}
});
var showMenu = new Ext.menu.Menu({
items : [grid]
});
var comb = new Ext.form.ComboBox({
renderTo:'combox-panel-grid', /*渲染到一个容器里*/
width:600,
triggerAction: 'all',
typeAhead: true,
lazyRender:true,
editable:true,
emptyText:'请选择...',
valueField: 'mid',
displayField: 'mname',
tpl:'<div id="panel-item"></div>',
mode: 'local',
onSelect:Ext.emptyFn ,
store:new Ext.data.ArrayStore({ fields: ['mid','mname'], data:[[]] }),
listeners:{
expand:function(combo){
//重要
if(this.menu == null) {
this.menu = showMenu;
}
store.load();
this.menu.show(this.el, "tl-bl?");
// this.menu.show(combo.getEl());
}
}
});
});
<div id="combox-panel-grid"></div>
ComboBox组件中实现下拉树效果:
var combtree = new Ext.form.ComboBox({
store:new Ext.data.SimpleStore({fields:[],data:[[]]}),
editable:false,
mode: 'local',
triggerAction:'all',
maxHeight: 200,
tpl: "<tpl for='.'><div style='height:200px'><div id='tree'></div></div></tpl>",
selectedClass:'',
onSelect:Ext.emptyFn
});
var tree = new Ext.tree.TreePanel({
loader:new Ext.tree.TreeLoader(),
border:false,
root:new Ext.tree.AsyncTreeNode({text: '目录',id:'0'}) ,
listeners:{
beforeload:function(node){
this.loader.dataUrl = '../../nodes.action?ID=' + node.id;
}}
});
tree.on('click',function(node){
combtree.setValue(node.text);
combtree.collapse();
});
combtree.on('expand',function(){
tree.render('tree');
});
combtree.render('combtree');
分享到:
相关推荐
首先,你需要创建一个多级结构的数据源,然后通过jQuery UI的API定制下拉菜单的显示方式,将层级结构转换为可展开的树形结构。在React或Vue中,有专门的组件库,如Ant Design或Element UI,它们提供了现成的下拉树...
至于"Combox 搜索"这个压缩包文件名,可能包含了实现自动下拉功能的源代码,或者是用于演示的示例项目。通常,这样的项目文件可能包含一个VB工程,里面包含了Form窗口、ComboBox控件以及其他相关组件,以及上述的...
源码通常是程序员为了实现特定功能而编写的计算机程序代码,这里提供的"Combox下拉多值"的源码可能是一个自定义控件,允许用户在下拉菜单中选择多个选项,并将这些选择存储为一个集合。这个源码可能是用某种编程语言...
3. 绑定到ComBox:将创建的Tree对象绑定到ComBox的dropdown属性上,这样在打开下拉菜单时就会显示这个树形结构。 ```actionscript var comboBox:ComboBox = new ComboBox(); comboBox.dropdown = tree; ``` 4. ...
ComboBox控件是VB中的基础组件,通常用于展示一个下拉菜单供用户选择。在这个特定的应用中,开发者可能通过编程技巧扩展了ComboBox的功能,使其能够显示预设的颜色样本。每项列表项可能代表一种颜色,当用户点击时,...
在C#编程中,COMBO BOX(组合框)控件是一种常见的用户界面元素,用于提供一个下拉列表供用户选择。然而,有时我们可能需要扩展其功能,使其具备树形结构或者支持多选。这样的需求在开发复杂的Windows应用程序时经常...
VB增强版ListView ComBox下拉列表控件,属性说明: 1.LVHead:列标题字符串,各列标题间用半角逗号“,”隔开 2.LVWidth:列宽度,也用“,”隔开,数目应与LVHead相同,值的大小取要显示的字符数 3.Style:下列...
当我们谈论“支持鼠标滚轮的ComBox下拉列表控件”时,这通常意味着开发者已经对标准的ComboBox控件进行了增强,使其能够通过鼠标的滚轮来滚动其下拉列表的部分。 ComboBox控件是Windows API、MFC、WinForms、WPF等...
内容索引:VB源码,界面编程,ComBox,下拉列表控件 一个支持鼠标滚轮的ComBox下拉列表控件,遗憾的是不支持键盘上、下键操作,多多少少有些不便,有需要的朋友可改进一下,也可以学习一下作者的思路。
首先,WPF的ComboBox是一个常用的控件,它结合了文本输入框和下拉列表的功能。用户可以输入文本,或者从下拉列表中选择一个预定义的选项。在默认情况下,ComboBox仅支持简单的文本项,但通过自定义控件和模板,我们...
本教程将详细讲解如何在DataGridView中内嵌ComboBox,并实现可下拉编辑以及从数据库加载数据的功能。 1. **创建内嵌ComboBox** 在C#中,我们首先需要在DataGridView的列定义中设置某一列的数据类型为DataGridView...
标题“combox 列表嵌套checkbox”指的是在下拉组合框(ComboBox)中集成复选框(Checkbox)功能,使得用户可以在下拉列表中进行多项选择。这种设计通常用于提供一种灵活的多选方式,特别是在选项众多且需要用户快速...
标题中的“一个功能扩展的Combox下拉选项框COMBBOX”是指在Windows应用程序开发中,对标准的ComboBox控件进行了增强和定制。ComboBox通常用于提供一个可下拉的列表,用户可以选择其中的一项。在这个扩展版本中,它...
### combox实现搜寻功能详解 在Java编程中,`JComboBox`是Swing库中的一个组件,用于创建下拉列表或组合框。它能够显示一个可编辑的文本字段和一个下拉列表,用户可以在其中选择一个选项或者手动输入文本。`...
本文将深入探讨“unigui自定义下拉combobox完善”这一主题,帮助开发者理解如何在Unigui环境中优化和扩展标准的ComboBox组件。 ComboBox组件在用户界面设计中扮演着重要的角色,它结合了输入框和下拉列表的功能,...
这个控件结合了ComboBox的下拉列表功能和CheckBox的选择特性,为开发者提供了一个方便的组件,以创建具有多选功能的下拉菜单。 首先,我们要理解ComboBox的基础知识。ComboBox在WPF中是一个可下拉的文本框,通常...
在本教程中,我们将探讨如何利用下拉列表方式创建一个自定义登录对话框,以实现更加高效和用户友好的登录过程。 首先,我们需要了解基本的步骤: 1. **创建新对话框**:在TIA博途WINCC中,打开项目,导航到“对象...
`GridComboBox` 结合了 `ComboBox` 和 `GridPanel` 的特性,允许用户在一个下拉菜单中浏览和选择多行数据。 1. **Extjs4 的 ComboBox** - `ComboBox` 是EXTJS中的一个基础组件,它提供了文本输入框和下拉列表的...
使用2个方法: (1) DataGridTemplateColumn (2)DataGridComboBoxColumn。 这两中方法都可以编辑选择的数据,但是推荐使用第一种DataGridTemplateColumn 。