为什么第二段代码为不能渐变,第一段能
- C/C++ code
void MainWindow::paintEvent(QPaintEvent *){ QPainter painter(this);//第一段 QConicalGradient conicalGradient1(50,50,0); //圆心为(50,50),开始角度为0 conicalGradient1.setColorAt(0,Qt::green); conicalGradient1.setColorAt(1,Qt::white); //从圆心的0度角开始逆时针填充 painter.setBrush(conicalGradient1); painter.drawEllipse(0,0,100,100);//第二段 QConicalGradient conicalGradient2(50,50,0); conicalGradient2.setColorAt(0,Qt::green); conicalGradient2.setColorAt(1,Qt::white); painter.setBrush(conicalGradient2); painter.drawEllipse(100,100,100,100);}
------解决方案--------------------
//第二段
QConicalGradient conicalGradient2(50,50,0); 错了。应该是:
//第二段
QConicalGradient conicalGradient2(150,150,0); 中心在你要画的圆的中心。