Здравствуйте. По аналогии с функцией изменения масштаба из примера mapinfo и добавил аналогичную в myfirst. Вопрос почему размер карты меняется в обе стороны, а ScrollBar и подложка карты не увеличиваются и не уменьшаются? Код приводить не стал т.к. он не менялся. Изменил только объекты вывода карты.
У тестовых примеров mapinfo и myfirst немного разное назначение, поэтому комбинирование подходов к программированию из них дает некорректный результат.
Пример mapview предназначен для того, чтобы показать, как можно управлять отображением карты без использования графического компонента QDMapView. Так здесь реализована отрисовка карты напрямую с помощью функции mapPaintToXImage низкоуровневого интерфейса MAPAPI:
Код
// Отобразим фрагмент карты в памяти
if (mapPaintToXImage(hMap, &Ximagedesc, 0, 0, &RectDraw))
{
// Отобразим фрагмент карты на экран
QImage image((uchar *)bits, cw, ch, QImage::Format_RGB32);
p->drawImage(cx, cy, image, 0, 0, cw, ch);
}
Пример myfirst наоборот показывает, как работать с картой при помощи компонента QDMapView. Так здесь этот компонент сразу добавлен на ui-форму с помощью Qt Designer.
Чтобы эффективно реализовать Вашу задачу, необходимо выбрать один из предложенных подходов.