gpt4 book ai didi

python - 在 QCursor 中使用自定义图像

转载 作者:太空宇宙 更新时间:2023-11-04 00:37:49 25 4
gpt4 key购买 nike

我有一个 .bmp 图像,我想将其用作我的 GUI 的光标。 QCursor Documentation建议这是可能的(“要使用您自己的位图创建游标,请使用采用位图和掩码的 QCursor 构造函数或采用像素图作为参数的构造函数”)但我似乎无法让它工作当我尝试将建议的模块与我的位图一起使用时,出现“TypeError: QCursor(): argument 1 has unexpected type 'str'”。应该怎么做?

下面是产生上述错误的代码。文档还建议将 alpha 掩码和其他两个值传递给 QCursor,但我不确定这些是否有必要,如果有必要,它们应该是什么。

import sys
from PyQt4 import QtGui, QtCore

QtGui.QCursor('image.bmp')

class Window(QtGui.QMainWindow):

def __init__(self):
super(Window, self).__init__()
self.setGeometry(50, 50, 500, 300)
cursor = QtGui.QPixmap('image.bmp')
self.setCursor(QtGui.QCursor(cursor))
self.home()

def home(self):
btn = QtGui.QPushButton("Quit", self)
btn.clicked.connect(QtCore.QCoreApplication.instance().quit)
btn.resize(100,100)
btn.move(100,100)
self.show()


def run():
app = QtGui.QApplication(sys.argv)
GUI = Window()
sys.exit(app.exec_())

run()

最佳答案

如果它可以帮助任何人谷歌搜索到这里,并且你可以给 whatEverColor 一个值作为透明颜色。在 __init__ 中:

pm = QtGui.QPixmap('image.bmp')
bm = pm.createMaskFromColor(whatEverColor, Qt.MaskOutColor)
pm.setAlphaChannel(bm)
cursor = QtGui.QCursor(pm)
self.setCursor(cursor)

关于python - 在 QCursor 中使用自定义图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43180859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com