Можно ли создать собственный курсор с помощью PyQt?
Я хотел использовать большую версию курсора с перекрестием для своей программы, но кажется, что я не могу изменить спецификации стандартных форм курсора (например, QtCore.Qt.OpenHandCursor). Тем не менее, можно ли вместо этого создать настроенную версию курсора? Как, скажем, из png изображения курсора?
1 ответ
Решение
Изображение должно быть сначала открыто с использованием PIL, преобразовано в растровое изображение и затем создано как курсор. вот код:
from PIL import Image
from PIL.ImageQt import ImageQt
img = Image.open('cursor.png')
imgQ = ImageQt(img)
cursorBitmap = QtGui.QBitmap.fromImage(imgQ)
CURSOR_NEW = QtGui.QCursor(cursorBitmap)
edit: как @ekhumoro указал в комментариях, это может быть достигнуто с помощью Pixmap и объединения его с QCursor, так что это будет выглядеть так:
CURSOR_NEW = QtGui.QCursor(QtGui.QPixmap('cursor.png'))
если это вызывает ошибку, это может быть связано с тем, что код не может найти правильный файл, поэтому, возможно, необходимо добавить правильный путь к коду