создавалось:
CODE:
function getmessage(0, WM_CREATE){
char c_map_id[255];char c_stage_id[255];
//TAb2 вкладка 1
tab2_ctrl[0][0]=CreateWindow(0, "COMBOBOX", "", WS_VISIBLE | WS_CHILD | WS_VSCROLL | CBS_DROPDOWN | CBS_SIMPLE, tab2_cord[0]+10, tab2_cord[1]+40, 115, 180, gethwnd(0), 0, 0, 0);
tab2_ctrl[0][1]=CreateWindow(0, "COMBOBOX", "", WS_VISIBLE | WS_CHILD | WS_VSCROLL | CBS_DROPDOWN | CBS_SIMPLE, tab2_cord[0]+130, tab2_cord[1]+40, 85, 180, gethwnd(0), 0, 0, 0);
// добавление строк в combo1 из массива combo1_text
for(int i_map_id=0; i_map_id<12; i_map_id++){
strcpy(#c_map_id[0], cbs_map_id_text[i_map_id]);
sendmessage(CB_ADDSTRING, 0, address(#c_map_id[0]), formatiw(tab2_ctrl[0][0]));
}
for(int i_stage_id=0; i_stage_id<12; i_stage_id++){
strcpy(#c_stage_id[0], cbs_stage_text[i_stage_id]);
sendmessage(CB_ADDSTRING, 0, address(#c_stage_id[0]), formatiw(tab2_ctrl[0][1]));
}
}
function getmessage(0, WM_CREATE){
char c_map_id[255];char c_stage_id[255];
//TAb2 вкладка 1
tab2_ctrl[0][0]=CreateWindow(0, "COMBOBOX", "", WS_VISIBLE | WS_CHILD | WS_VSCROLL | CBS_DROPDOWN | CBS_SIMPLE, tab2_cord[0]+10, tab2_cord[1]+40, 115, 180, gethwnd(0), 0, 0, 0);
tab2_ctrl[0][1]=CreateWindow(0, "COMBOBOX", "", WS_VISIBLE | WS_CHILD | WS_VSCROLL | CBS_DROPDOWN | CBS_SIMPLE, tab2_cord[0]+130, tab2_cord[1]+40, 85, 180, gethwnd(0), 0, 0, 0);
// добавление строк в combo1 из массива combo1_text
for(int i_map_id=0; i_map_id<12; i_map_id++){
strcpy(#c_map_id[0], cbs_map_id_text[i_map_id]);
sendmessage(CB_ADDSTRING, 0, address(#c_map_id[0]), formatiw(tab2_ctrl[0][0]));
}
for(int i_stage_id=0; i_stage_id<12; i_stage_id++){
strcpy(#c_stage_id[0], cbs_stage_text[i_stage_id]);
sendmessage(CB_ADDSTRING, 0, address(#c_stage_id[0]), formatiw(tab2_ctrl[0][1]));
}
}
отлавливал нажатия так:
CODE:
function getmessage(0, WM_COMMAND){
if(hiword(message.wparam) == CBN_SELENDOK && message.lparam==tab2_ctrl[0][1]){
tmp=sendmessage(CB_GETCURSEL, 1, 0, formatiw(tab2_ctrl[0][1])); // узнаём
WritePrivateProfileString ("Tabs", "_stage", format(tmp), path_to_ini); //Записали в ini значение
return;
}
}
if(hiword(message.wparam) == CBN_SELENDOK && message.lparam==tab2_ctrl[0][1]){
tmp=sendmessage(CB_GETCURSEL, 1, 0, formatiw(tab2_ctrl[0][1])); // узнаём
WritePrivateProfileString ("Tabs", "_stage", format(tmp), path_to_ini); //Записали в ini значение
return;
}
}
Подскажите, почему не отрабатывает WM_COMMAND ?
(Добавление)
P/S если каких то переменных тут не написал, они есть, я брал просто значимые для этого участки кода. Прошу не ругать на это