In my case, scale is 150, I want:

major ticks: (0, 75, 150) --> QPen(Qt::black, 1, Qt::SolidLine)
medium tickes: (15, 30, 45, 60, 90, 105, 120, 135) --> QPen(Qt::gray, 1, Qt:ashLine)
minor tickes: (5, 10, 20, 25, 35, 40, 50, 55, 65, 70, 80, 85, 95, 100, 110, 115, 125, 130) --> no painted grid lines

I tried:

Qt Code:
  1. QList<double> majorTicks;
  2. majorTicks << 0 << 75 << 150;
  3.  
  4. QList<double> mediumTicks;
  5. mediumTicks << 15 << 30 << 45 << 60 << 90 << 105 << 120 << 135;
  6.  
  7. QList<double> minorTicks;
  8. minorTicks << 5 << 10 << 20 << 25 << 35 << 40 << 50 << 55 << 65
  9. << 70 << 80 << 85 << 95 << 100 << 110 << 115 << 125 << 130;
  10.  
  11. div.setTicks(QwtScaleDiv::MajorTick, majorTicks);
  12. div.setTicks(QwtScaleDiv::MediumTick, mediumTicks);
  13. div.setTicks(QwtScaleDiv::MinorTick, minorTicks);
  14.  
  15. plots[i]->setAxisScale(QwtPlot::xTop, 0, 150);
  16. //plots[i]->setAxisScaleDiv(QwtPlot::xTop, div);
  17. grids[i]->setXDiv(div);
To copy to clipboard, switch view to plain text mode 

still failed. Need helps!


Tang Tao