Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Гурман от Август 03, 2010, 11:18



Название: как гарантированно получать отображение нарисованных айтемов?
Отправлено: Гурман от Август 03, 2010, 11:18
несмотря на то, что пытаюсь заставить приложение отработать все события, айтемы не рисуются сразу после вызова processEvents

сделал вот такой метод, чтобы видеть где находится невидимый обычно "курсор"

Код:
void Center::ShowCursor()
{
scene->addItem( new QGraphicsRectItem( cursor.x(), cursor.y(), 3, 3 ) );
scene->update();
while( app->hasPendingEvents() )
app->processEvents();
}

если сразу за вызовом этого метода поставить точку останова, то нет никакой гарантии, будет виден квадратик, или нет, но если ее проскочить, то при следующем останове может появиться сразу 2 квадратика

есть какой-нибудь еще способ помпажа событий рисования, чтобы они гарантированно рисовали на видимой сцене все на нее выложенное?