QGraphicsView verschieben
Verfasst: 7. Juli 2009 16:07
Hallo zusammen,
ich habe hier im Forum schon einige Beiträge zum Thema gelesen, jedoch keine eindeutige und funktionierende Lösung gefunden. Vielleicht hat man mittlerweile eine gefunden?
Es geht darum, mit gedruckter Maustaste die View hin und her zu schieben.
Die View wird zwar verschoben, hat aber ein "komisches Verhalten", schiebt sich nur nach unten und oben auch wenn man die Maus seitlich oder schräg bewegt. Kann mir da jemand helfen???
ich habe hier im Forum schon einige Beiträge zum Thema gelesen, jedoch keine eindeutige und funktionierende Lösung gefunden. Vielleicht hat man mittlerweile eine gefunden?
Es geht darum, mit gedruckter Maustaste die View hin und her zu schieben.
Code: Alles auswählen
void MyGraphicsView::mousePressEvent(QMouseEvent* event)
{
lastPoint = event->pos();
}
void MyGraphicsView::mouseMoveEvent(QMouseEvent * event)
{
QRectF rect = this->rect();
double x = rect.x();
double y = rect.y();
double w = rect.width() * 2;
double h = rect.height() * 2;
this->setSceneRect(x,y,w,h);
QPoint p = event->pos();
this->setTransformationAnchor(QGraphicsView::NoAnchor);
translate(p.x() - lastPoint.x(), p.y() - lastPoint.y() );
}