提供一点思路吧,未经测试,是否可行不敢断言:
easyui的combogrid在生成DOM时,实际会将原来的input或select 设为display:none,接收输入的是easyui自动生成的另一个input,通过跟踪可以发现这个input的class为combo-text,那么你可以在适当的事件中为这个input添加focus事件绑定,调用combobox的ShowPanel方法显示下拉列表。
getSelectionsgetSelections
用getSelections方法取得所有已选择的数据
中文API
>
它继承自datagrid,看datagrid的方法就行
DataGrid其中与选择,勾选相关
DataGrid属性:
singleSelect boolean 如果为true,则只允许选择一行。 false
ctrlSelect boolean 在启用多行选择的时候允许使用Ctrl键+鼠标点击的方式进行多选 *** 作。(该属性自136版开始可用)
checkOnSelect boolean 如果为true,当用户点击行的时候该复选框就会被选中或取消选中。如果为false,当用户仅在点击该复选框的时候才会呗选中或取消。(该属性自13版开始可用) true
selectOnCheck boolean 如果为true,单击复选框将永远选择行。如果为false,选择行将不选中复选框。(该属性自13版开始可用)
DataGrid列是一个数组对象,该元素也是一个数组对象。元素数组里面的元素是一个配置对象,它用来定义每一个列字段。
checkbox boolean 如果为true,则显示复选框。该复选框列固定宽度。
DataGrid事件
onSelect rowIndex, rowData 在用户选择一行的时候触发,参数包括:rowIndex:选择的行的索引值,索引从0开始。rowData:对应于所选行的记录。
onUnselect rowIndex, rowData 在用户取消选择一行的时候触发,参数包括:rowIndex:选择的行的索引值,索引从0开始。rowData:对应于取消选择行的记录。
onSelectAll rows 在用户选择所有行的时候触发。
onUnselectAll rows 在用户取消选择所有行的时候触发。
onCheck rowIndex,rowData 在用户勾选一行的时候触发,参数包括:rowIndex:选中的行索引,索引从0开始。rowData:对应于所选行的记录。(该事件自13版开始可用)
onUncheck rowIndex,rowData 在用户取消勾选一行的时候触发,参数包括:rowIndex:选中的行索引,索引从0开始。rowData:对应于取消勾选行的记录。(该事件自13版开始可用)
onCheckAll rows 在用户勾选所有行的时候触发。(该事件自13版开始可用)
onUncheckAll rows 在用户取消勾选所有行的时候触发。(该事件自13版开始可用)
方法
getChecked none 在复选框呗选中的时候返回所有行。(该方法自13版开始可用)
getSelected none 返回第一个被选中的行或如果没有选中的行则返回null。
getSelections none 返回所有被选中的行,当没有记录被选中的时候将返回一个空数组。
clearSelections none 清除所有选择的行。
clearChecked none 清除所有勾选的行。(该方法自132版开始可用)
selectAll none 选择当前页中所有的行。
unselectAll none 取消选择所有当前页中所有的行。
selectRow index 选择一行,行索引从0开始。
selectRecord idValue 通过ID值参数选择一行。
unselectRow index 取消选择一行。
checkAll none 勾选当前页中的所有行。(该方法自13版开始可用)
uncheckAll none 取消勾选当前页中的所有行。(该方法自13版开始可用)
checkRow index 勾选一行,行索引从0开始。(该方法自13版开始可用)
uncheckRow index 取消勾选一行,行索引从0开始。(该方法自13版开始可用)
它只允许选中一行,所以无法切换。singleSelect属性设置为true,只允许选中一行。在窗口最大化的情况下,把鼠标放在此窗口标题栏上,双击鼠标左键,这时,这个窗口就会还原;同样的,在一个窗口不是最大化的情况下,双击它的标题栏,这个窗口就会最大化。再按Ctrl+F10,将当前文档窗口在“最大化”与“原状态”之间切换。
Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。
1、定义控件对应变量
假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控件拖放到上面。打开 Class Wizard,添加控件对应变量,
如:CComboBox m_cbExamble;
在后面的代码中会不断使用这个变量。
2、向控件添加 Items
1) 在Combo Box控件属性的Data标签里面添加,一行表示Combo Box下拉列表中的一行。换行用ctrl+回车。
2)利用函数 AddString()向Combo Box 控件添加 Items,如:
m_cbExampleAddString(“StringData1”);
m_cbExampleAddString(“StringData2”);
m_cbExampleAddString(“StringData3”);
3)也可以调用函数 InsertString()将 Item插入指定位置 nIndex,如:
m_cbExampleInsertString( nIndex, “StringData” );
3、从控件得到选定的Item
假设在控件列表中已经选定某项,现在要得到被选定项的内容,首先要得到该项的位置,然后得到对应位置的内容。这里会用到两个函数,如:
int nIndex = m_cbExampleGetCurSel();
CString strCBText;
m_cbExampleGetLBText( nIndex, strCBText);
这样,得到的内容就保存在 strCBText中。
若要选取当前内容,可调用函数GetWindowText(strCBText)。
4、在控件中查找给定Item
这种 *** 作一般用于在程序中动态修改控件中该项的值,可以用函数FindStringExact()精确匹配,如:
int nIndex = m_cbExampleFindStringExact( nStartAfter, “value to be found”);
nStartAfter指明从哪一行开始查找。如果查找成功,返回的是该项的位置;否则,返回CB_ERR。
也可以选中包含指定字符串的项,如:
int nIndex = m_cbExampleSelectString( nStartAfter, “value to be selected”);
5、删除控件中的Item
该 *** 作可以利用函数DeleteString(),需要指定被删除项的位置,如:
m_cbExampleDeleteString(nIndex);
也可以使用函数ResetContent(),清除目前的所有项,如:
m_cbExampleResetContent();
6、显示控件中的某项
int nIndex = m_cbExampleGetCurSel(); //当前选中的项
m_cbExampleSetCurSel(nIndex); //设置第nIndex项为显示的内容
7、得到或设置输入框中被选中的字符位置
DWORD GetEditSel( ) /BOOL SetEditSel( int nStartChar, int nEndChar );
BOOL LimitText( int nMaxChars );设置输入框中可输入的最大字符数。
8、列表框常用消息映射宏
ON_CBN_DBLCLK 鼠标双击
ON_CBN_DROPDOWN 列表框被d出
ON_CBN_KILLFOCUS / ON_CBN_SETFOCUS 在输入框失去/得到输入焦点时产生
ON_CBN_SELCHANGE 列表框中选择的行发生改变
ON_CBN_EDITUPDATE 输入框中内容被更新
以上就是关于easyui datagrid combobox 里面获取焦点事件怎么写全部的内容,包括:easyui datagrid combobox 里面获取焦点事件怎么写、JQuery easyui的treegrid在可以多选时怎么获取当前选中的行、easyUI 怎么获取checkbox 获取后怎么让其选中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)