Восстановить курсор переопределения не для всего приложения

У меня есть большое приложение с множеством виджетов и окон.

В какой-то момент я восстанавливаю курсор для всего приложения. Мне нужно сохранить его «настроенным» (как это было) для одного кадра. Я установил его для кадра, чтобы он снова был «настроен», но он по-прежнему восстанавливается в течение 1 миллисекунды, и это заметно.

Итак, состояния моего курсора: «Настроено» - «Нормально» - «Настроено». Как я могу пропустить изменение курсора для одного (текущего) кадра? Но восстановить его для всех других окон (чтобы снова нормально)?


person Saskia    schedule 26.09.2014    source источник


Ответы (1)


Восстановите переопределяющий курсор для всех приложений, но установите курсор на свой фрейм.

Используйте метод setCursor().

http://qt-project.org/doc/qt-4.8/qwidget.html#cursor-prop

Как сказано в документации о setOverrideCursor():

Этот курсор будет отображаться во всех виджетах приложения до тех пор, пока не будет вызван restoreOverrideCursor() или другой setOverrideCursor().

http://qt-project.org/doc/qt-4.8/qapplication.html#setOverrideCursor

Таким образом, вы не можете восстановить курсор для всех виджетов вместо одного, вы должны использовать метод setCursor().

person Kosovan    schedule 26.09.2014