В основном то, что я хочу сделать, это нарисовать прямоугольники для каждого числа в моем списке. Чем больше число, тем больше прямоугольник. Моя проблема в том, что я действительно хочу сделать это шаг за шагом и ждать несколько секунд между каждым рисунком. Я искал несколько решений, но не могу заставить их работать в этом конкретном случае. Я видел, что могу использовать fflush для освобождения всего, что находится в буфере, но я не знаю, как я могу использовать его для этого.
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing, true);
painter.setBrush(QBrush(Qt::green, Qt::SolidPattern));
int weight=300/lista.size;
int posx=weight;
for (int i=1; i<=lista.size; i++){
List_node * node = list.get_element_at(i);
int num=node->getValue(); //this returns the value of the node
if (i==3){
painter.setBrush(QBrush(Qt::red, Qt::SolidPattern)); // this line is to draw a rectangle with a different color. Testing purposes.
}
painter.drawRect(posx,400-(num*10),weight,num*10);
sleep(1); //this sleep isn't working correctly.
painter.setBrush(QBrush(Qt::green, Qt::SolidPattern));
posx+=weight;
}
Любая помощь могла бы быть полезна.