写过的一个函数,还有改进空间
void add_option(int dialog_id, int stylerNumber,char *optionchar) //给选择控件添加项
{
UF_STYLER_item_value_type_t data;
int i,num=0;
logical IsAdd=true;
//list_w(optionchar);
IsAdd=true;
if(strlen(optionchar)>0)
{
data.item_id=ATTR_OPTION_1;
switch(stylerNumber) {
case 1:
data.item_id=ATTR_OPTION_1;
break;
case 2:
data.item_id=ATTR_OPTION_2;
break;
case 3:
data.item_id=ATTR_OPTION_3;
break;
case 4:
data.item_id=ATTR_OPTION_4;
break;
case 5:
data.item_id=ATTR_OPTION_5;
break;
case 6:
data.item_id=ATTR_OPTION_6;
break;
case 7:
data.item_id=ATTR_OPTION_7;
break;
case 8:
data.item_id=ATTR_OPTION_8;
break;
default:
return;
}
data.item_attr=UF_STYLER_SUBITEM_VALUES ;
UF_CALL(UF_STYLER_ask_value(dialog_id,&data));
num=data.count;
if(num<0) num=0;
for(i=0;i<num;i++)
{
if(stricmp(data.value.strings[i],optionchar)==0)
{
IsAdd=false;
break;
}
}
if(IsAdd)
{
data.value.strings[num]=optionchar;
num++;
data.count=num;
UF_CALL(UF_STYLER_set_value(dialog_id,&data));
}
}
} |