TTable userTable = DBMgr::getdb()->query("SELECT K AS Names FROM S_CFG");
vector<string> vec;
for(int i=0;i<userTable.size();i++) {
string stmp = userTable.getValue(i,"Names");
vec.push_back("{\"id\":\""+stmp+"\",\"name\":\""+stmp+"\"}");
}
string json = "[" + StringUtil::join(vec, ",") + "]";
wMDropdown1->setOptions(json, 0);
上面是字符串相加生成json
============多语言===========
下面是用json工具
#define LOCALE_STR(tag) getRuntime()->getILanguageMgr()->getTag(string("_L(\"")+tag+string("\")"))
void Frm09::onLoad() {vector<vector<KV_Str_Str>> vec1;vector<KV_Str_Str> vec;// 选项1的idKV_Str_Str kv1;kv1.k = "id";//固定为idkv1.v = "0";//选项1的valuevec.push_back(kv1);// 选项1的nameKV_Str_Str kv2;kv2.k = "name";//固定为namekv2.v = LOCALE_STR("多语言标签1");//选项的名称(显示的文字)vec.push_back(kv2);// 选项1加入数组vec1.push_back(vec);//继续选项2......//生成jsonstring json1 = "";Util::convertArrayToJson(vec1, json1);//设置给控件wMDropdown2->setOptions(json1, 0);}