请更新虚表到 12.4 版本。
本版本修改 comboBox 支持手动输入项目内容。
comboBoxEx仍然仅支持选择项目。
import win.ui;
import godking.vlistEx;
/*DSG{{*/
mainForm = win.form(text="vlistEx - table adapter";right=319;bottom=319;border="thin")
mainForm.add(
vlistEx={cls="vlistEx";left=16;top=24;right=304;bottom=304;acceptfiles=1;aw=1;db=1;dl=1;dr=1;dt=1;edge=1;hscroll=1;vscroll=1;z=1}
)
/*}}*/
mainForm.vlistEx.setColumns("下拉列表框过滤演示");
var t = { {"张三"}, {"李四"}, {"王五"}, {"SSS"}, {"AAA"}};
mainForm.vlistEx.setTable(t,false/*列标题*/,/*列宽*/,/*0左1中2右*/,/*字典转为数组*/,/*字符串转为Utf8*/,true/*是否克隆新表*/);
mainForm.vlistEx.setColumnType(1, 1/*_vlistEx_ColType_ComboBox*/, true/*显示小箭头*/, 0xFF00FF/*箭头颜色*/ );
mainForm.vlistEx.onEditBegin = true; //允许编辑才能下拉
mainForm.vlistEx.editOnClick = true; //单击编辑
mainForm.vlistEx.onComboBoxShow = function(row,col,comboBox){
// 弹出下拉列表前,先重新初始化下拉列表项目内容。
mainForm.vlistEx.setComboBoxItems({"张三", "李四", "王五", "SSS", "AAA"}); //设置下拉列表项目
mainForm.vlistEx.getComboBox().selText = mainForm.vlistEx.getCellText(row /*行号*/,col/*列号或字典key*/);
comboBox.show(true);
}
mainForm.vlistEx.getComboBox().onEditChange = function(){
// 对下拉框列表项目,根据输入内容进行过滤显示。
mainForm.vlistEx.getComboBox().listBox.clear();
for(i=1;10;1){
mainForm.vlistEx.getComboBox().add(mainForm.vlistEx.getComboBox().text++i,0/*图片索引*/,0/*附加数据*/,0/*右缩进值*/);
}
}
mainForm.show();
win.loopMessage();