在aardio中,下拉组合框combobox插入项到指定位置需要注意:
1.直接调用现成封装好的insert()函数添加项,注意是按自然顺序,值为2时是插入到第2位后;默认添加到开始处,-1表示添加到尾部,支持0x100/*_CBS_SORT*/排序。
2.发系统消息给指定下拉列表框控件插入新项,注意索引从0开始,所以索引为1时是插入到第2位后 (参见标准库)。
示例源码如下:
import win.ui;
/*DSG{{*/
var winform = win.form(text="简码-中文编程入门教程 www.jianma123.com";right=322;bottom=90;max=false;min=false)
winform.add(
button={cls="button";text="插入项到指定位置";left=189;top=19;right=307;bottom=43;z=2};
button2={cls="button";text="消息方式";left=189;top=52;right=307;bottom=76;z=4};
combobox={cls="combobox";left=15;top=19;right=179;bottom=45;edge=1;items={};mode="dropdown";z=1};
static={cls="static";text="提示:";left=16;top=54;right=177;bottom=72;transparent=1;z=3}
)
/*}}*/
//预置几个项
winform.combobox.items={"第1项";"第2项";"第3项";"第4项";"第5项";"第6项";}
var n = 0;
//方法1 直接调用现成封装好的函数添加项,注意是按自然顺序,值为2时是插入到第2位后
winform.button.oncommand = function(id,event){
n = n+1;
winform.combobox.insert("新插入的第"+n+"项",2);// 默认添加到开始处,-1表示添加到尾部,支持0x100/*_CBS_SORT*/排序
winform.static.text = "提示:插入新项到第2位成功!";
}
//方法2 发系统消息给指定下拉列表框控件插入新项,注意索引从0开始,所以索引为1时是插入到第2位后 (参考标准库)
winform.button2.oncommand = function(id,event){
n = n+1;
::User32.SendMessage(winform.combobox.hwnd/*句柄*/, 0x14A/*_CB_INSERTSTRING*/,1 ,"新插入的第"+n+"项"/*项文本*/)
winform.static.text = "提示:插入新项到第2位成功!";
}
winform.show()
win.loopMessage();