ilovethisgame
7th July 2006, 07:16
When window size is changed by using QPainter:: setWindow(...)
during a zooming process, the behaviour of brush pattern is very
wierd (please look at the attached bmp). Is there any way to make
the brush pattern stable?
//Painting codes:
void paint_test:: paintEvent(QPaintEvent * e)
{
QPainter painter(this);
painter.setPen(Qt::red);
QBrush brush(Qt:: Dense6Pattern);
brush.setColor(Qt::blue);
painter.setBrush(brush);
painter.setWindow(0, 0, 1000, 1000);
painter.drawRect(50, 50, 100, 200);
painter.setWindow(0, 0, 2000, 2000);
painter.drawRect(500, 100, 200, 400);
painter.setWindow(0, 0, 3000, 3000);
painter.drawRect(1350, 150, 300, 600);
painter.setWindow(0, 0, 4000, 4000);
painter.drawRect(2600, 200, 400, 800);
painter.setWindow(0, 0, 5000, 5000);
painter.drawRect(4250, 250, 500, 1000);
}
during a zooming process, the behaviour of brush pattern is very
wierd (please look at the attached bmp). Is there any way to make
the brush pattern stable?
//Painting codes:
void paint_test:: paintEvent(QPaintEvent * e)
{
QPainter painter(this);
painter.setPen(Qt::red);
QBrush brush(Qt:: Dense6Pattern);
brush.setColor(Qt::blue);
painter.setBrush(brush);
painter.setWindow(0, 0, 1000, 1000);
painter.drawRect(50, 50, 100, 200);
painter.setWindow(0, 0, 2000, 2000);
painter.drawRect(500, 100, 200, 400);
painter.setWindow(0, 0, 3000, 3000);
painter.drawRect(1350, 150, 300, 600);
painter.setWindow(0, 0, 4000, 4000);
painter.drawRect(2600, 200, 400, 800);
painter.setWindow(0, 0, 5000, 5000);
painter.drawRect(4250, 250, 500, 1000);
}