私の作業環境:Qt 5.8 MSVC2015 64ビット、QT GraphicsView、Windows 7 64ビット
以下のようにクラスを派生させました。
class MainWindow : public QMainWindow
class mySquare : public QGraphicsRectItem
class GraphicsView : public QGraphicsView
class Scene : public QGraphicsScene
中に文字を入れてスクエアを描きました。ズームインとズームアウトのために、以下のコードを使用しました:
void GraphicsView::mouseMoveEvent(QMouseEvent *event)
{
//temp raise mouse movement signal start
QPointF movment = mapToScene (event->pos());
emit sendMousePoint(movment);
if (_pan) // it get enable when control button is pressed.
{
horizontalScrollBar()->setValue(horizontalScrollBar()->value() - (event->x() - _panStartX));
verticalScrollBar()->setValue(verticalScrollBar()->value() - (event->y() - _panStartY));
_panStartX = event->x();
_panStartY = event->y();
event->accept();
// qDebug() <<"Mouse X" << QString::number(event->pos().x()) << " Y:" << QString::number(event->pos().y());
return;
}
//temp raise mouse movement signal end
event->ignore();
QGraphicsView::mousePressEvent(event);
}
しかし、ズームインおよびズームアウトすると、焦点が合わなくなり、白い空白の画面が作成されます。
ズームインとズームアウトのコードで何が欠けているのか手がかりはありますか?