Hi,
use a cosmetic pen (width of zero).
Cheers,
Sean
On 02/10/2016 02:18, 心翔 wrote:
Hi,
I subclass the QGraphicsView to
reimplement drawBackground and wheelEvent and want to get this effect:
but when I wheel the mouse, the background point will scale also。
how can implement that it only scale t/he spacing between points but not
the point itself,like this:/
/
/
/
/
/
/
/the code:/
voidSchView::wheelEvent(QWheelEvent*event)
{
qrealscaleFactor=(pow((double)2,event->delta()/240.0));
qrealfactor=transform().scale(scaleFactor,scaleFactor).mapRect(QRectF(0,0,1,1)).width();
if(factor<0.07||factor>100)
return;
scale(scaleFactor,scaleFactor);
}
voidSchView::drawBackground(QPainter*painter,constQRectF&rect)
{
intgridSize=20;
QPenpen(QColor(Qt::white));
painter->setPen(pen);
qrealleft=int(rect.left())-(int(rect.left())%gridSize);
qrealtop=int(rect.top())-(int(rect.top())%gridSize);
QVarLengthArray<QPointF,800>points;
for(qrealx=left;x<rect.right();x+=gridSize){
for(qrealy=top;y<rect.bottom();y+=gridSize){
points.append(QPointF(x,y));
}
}
painter->drawPoints(points.data(),points.size());
}
/
/
/Any suggestions are greatly appreciated./
/thanks/
/
/
/
/
/
/
------------------------------------------------------------------------
itviewer
/
/
_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development
--
Dr Sean Harmer | [email protected] | Managing Director UK
KDAB (UK) Ltd, a KDAB Group company
Tel. +44 (0)1625 809908; Sweden (HQ) +46-563-540090
Mobile: +44 (0)7545 140604
KDAB - Qt Experts
_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development