Qt Przesuwanie obrazu za pomocą myszy

0

Witam.

Żeby nie komplikować.
Mam stworzony obiekt Scena dziedziczący po QGraphicsView do niego został dodany obiekt QGraphicsScene wraz z innymi obiektami dziedziczącymi po QGraphicsItem (dość typowo), czyli tło typu *.png ,a na nim inne różne narysowane obiekty . Całość została umieszczona QMainWindow w jakimś QGroupBox. Zazwyczaj obraz jest na tyle duży, że automatycznie pojawiają się scrollbar-y i tak ma być.
Pytanie brzmi, jak zaimplementować funkcję, która pozwoli po naciśnięciu myszą na obiekt QGraphicsView przesuwanie jego zawartości ? Czyli takie złapanie obrazu i przesunięcie na wybrany obszar, który było dotychczas niewidoczny ? Chcę osiągnąć taki sam efekt jak przy przeglądaniu np mapy w mapsGoogle :)
Doszedłem do tego

void Scena::mousePressEvent(QMouseEvent *e)
{
    offset =  e->pos();
}

void Scena::mouseMoveEvent(QMouseEvent *e)
{

    this->move(mapToParent(e->pos() - offset));
    arena->update();
}

Tyle, że przesuwając myszą nie pokazuje mi się zawartość obrazu, za obszaru scrollbar jak chcę, a przesuwam całym obrazem razem ze scrolami. Myślę, że tutaj chodzi o to, aby właściwie mapować rodzica, a w tym wypadku rodzicem jest QGroupBox, więc to w stosunku do niego przesuwa się chyba cały obraz.

0

Jak chce zmienić sama wartość scrolów dzieje się tak samo jak wyżej opisałem, przeciągam cały obraz razem z nimi. Próbuje zrobić coś przy pomocy funkcji ensurevisible, ale na razie marny efekt :]

1 użytkowników online, w tym zalogowanych: 0, gości: 1