Qt рисует маленький значок «x» на пользовательском элементе управления

Я рисую пользовательский элемент управления в Qt в функции paintEvent (поэтому у меня есть QPainter для рисования). Теперь я хотел бы добавить маленькую иконку в виде крестика, которая анимируется, когда на нее наводится указатель мыши.

Я знаю, что у QPainterPath есть метод "содержит", который я могу использовать для проверки входа мыши в область, но мне интересно, как мне нарисовать маленький "x".

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

Как лучше всего нарисовать маленькую иконку в пользовательском элементе управления (желательно в QPainterPath)?


person Albert    schedule 10.05.2015    source источник


Ответы (1)


Я бы добавил значок в приложение, а затем нарисовал растровое изображение этого QIcon. Если есть функция рисования растрового изображения с вращением, вы можете использовать QPropertyAnimation для «анимации» угла поворота.

person fassl    schedule 10.05.2015