Добрый день! Не работает одна из функций: либо mapSelectLayer, либо mapSetViewSelect. Как проверить адекватен ли результат данных функций? Просто обе они ничего не возращают. Проблема в том, что данный код полностью скопирован с проекта под Windows. Реализовала в Linux`е: как результат - ни один слой не отключен, хотя были выбраны те слои, которые надо оставить в карте. Ниже приведен код:
Добрый день. Сообщите в какой системе Вы работаете. Для начала проверьте чтобы hSelect был не равен 0. Возможно он некорректно создается отсюда вся проблема.
- Напишите, пожалуйста, название и версию для операционной системы и продукта, которые Вы используете;
- Стандартный пример работы со слоями, который можно воспроизвести на основе примера myfirst, входящего в инсталляцию ГИС Конструктор для Qt Designer и карты Noginsk.sit:
Код
long int arrLayers[3] = {8,10,11};
HMAP hMap = ui.DMapView1->GetMapHandle();
HSELECT hSelect = mapCreateMapSelectContext(hMap);
mapSelectLayer(hSelect, -1, 0);
for (int i = 0; i<3; i++)
mapSelectLayer(hSelect, arrLayers[i], 1);
mapSetViewSelect(hMap, hSelect);
ui.DMapView1->Repaint();