当前位置: 首页 > news >正文

专注七星彩网站开发免费安装电脑wordpress

专注七星彩网站开发,免费安装电脑wordpress,职业技能培训中心,WORDPRESS自定义加载不出来文章目录 鼠标形状设置常用鼠标形状设置自定义鼠标形状 重置形状获取鼠标鼠标跟踪鼠标跟踪案例 鼠标形状设置 常用鼠标形状设置 在PyQt中#xff0c;QWidget类提供了设置鼠标形状的功能。可以使用setCursor()方法来更改QWidget及其子类的鼠标形状。该方法接受一个Qt.CursorS… 文章目录 鼠标形状设置常用鼠标形状设置自定义鼠标形状 重置形状获取鼠标鼠标跟踪鼠标跟踪案例 鼠标形状设置 常用鼠标形状设置 在PyQt中QWidget类提供了设置鼠标形状的功能。可以使用setCursor()方法来更改QWidget及其子类的鼠标形状。该方法接受一个Qt.CursorShape参数该参数定义了不同的鼠标形状选项。 以下是一些常用的鼠标形状选项及其对应的Qt.CursorShape常量 Qt.ArrowCursor标准箭头指针。 Qt.UpArrowCursor向上箭头指针。 Qt.CrossCursor十字形指针。 Qt.IBeamCursorI形指针用于文本输入。 Qt.WaitCursor无操作期间的等待指针。 Qt.BusyCursor忙碌指针。 Qt.ForbiddenCursor禁止指针。 Qt.PointingHandCursor手形指针用于指示可点击的对象。 Qt.WhatsThisCursor上下问号指针用于提供上下文帮助。 Qt.SizeVerCursor垂直调整大小指针。 Qt.SizeHorCursor水平调整大小指针。 Qt.SizeBDiagCursor对角线调整大小指针从左上到右下。 Qt.SizeAllCursor移动调整大小指针。 Qt.SplitVCursor垂直分割指针。 Qt.SplitHCursor水平分割指针。 Qt.OpenHandCursor打开手指针。 Qt.ClosedHandCursor闭合手指针。 Qt.BlankCursor隐藏鼠标指针下面是一个空白的图片。 下面为常用鼠标设置的代码示例 from PyQt5.QtWidgets import * from PyQt5.QtCore import Qt import sysapp QApplication(sys.argv)window QWidget() window.resize(200, 200)window.setCursor(Qt.BusyCursor) # 设置鼠标形状为加载状态 window.show()sys.exit(app.exec_())运行结果 自定义鼠标形状 在PyQt中可以使用QCursor对象来将一张图片设置为鼠标指针的形状。下面是具体步骤 导入所需的类from PyQt5.QtGui import QPixmap, QCursor加载图片使用QPixmap类的fromImage()方法从文件或QImage对象中加载图片。例如cursor_image QPixmap(path/to/image.png) 将会创建一个QPixmap对象其中包含了指定路径下的图片。调整图片大小如果需要可以使用cursor_image.scaled()方法调整图片的大小。例如scaled_image cursor_image.scaled(32, 32) 会将图片调整为32x32像素大小的图片。创建自定义鼠标形状使用QCursor类的QCursor(cursor_image)构造函数传入调整大小后的图片创建一个自定义的QCursor对象。设置QWidget的鼠标形状使用QWidget的setCursor()方法将自定义的QCursor对象设置为QWidget的鼠标形状。 以下是一个示例代码展示了如何将一张图片设置为QWidget的鼠标形状 from PyQt5.QtWidgets import * from PyQt5.QtGui import QPixmap, QCursor import sysapp QApplication(sys.argv)window QWidget() window.setWindowTitle(自定义鼠标操作) window.resize(300, 300)pixmap QPixmap(mouse.png) # 创建一个图片对象 new_pixmap pixmap.scaled(50, 50) # 将缩放图片的对象返回并用new_pixmap接收其返回值 cursor QCursor(new_pixmap) # 鼠标对象(图片对象)window.setCursor(cursor)window.show() sys.exit(app.exec_())运行结果 此时将鼠标移动到控件窗口内就会出现自定义的图片。 但是当我们要进行点击的操作时发现当鼠标的中间位置到达目标位置时才能执行点击操作这是因为在QCursor函数内部它将鼠标图片的热点设置在中间位置。 因此可以通过修改图片的热点位置就可实现鼠标点击生效的位置。如以下代码QCursor(new_pixmap, 0, 0)其中的0,0即为热点位置若想将热点位置改为鼠标右下角可设置为50,50。因为前边使用pixmap.scaled(50, 50)已将图片缩放到50,50的尺寸大小 pixmap QPixmap(mouse.png) # 创建一个图片对象 new_pixmap pixmap.scaled(50, 50) # 将缩放图片的对象返回并用new_pixmap接收其返回值 cursor QCursor(new_pixmap, 0, 0) # 鼠标对象(图片对象)重置形状 在PyQt中unsetCursor()是一个QWidget的方法用于将QWidget的鼠标指针形状重置为默认形状。 以以上代码为例 pixmap QPixmap(mouse.png) # 创建一个图片对象 new_pixmap pixmap.scaled(50, 50) # 将缩放图片的对象返回并用new_pixmap接收其返回值 cursor QCursor(new_pixmap, 0, 0) # 鼠标对象(图片对象)window.setCursor(cursor) window.unsetCursor() # 重置鼠标形状运行结果 获取鼠标 在PyQt中你可以使用QWidget的pos()方法来获取鼠标的当前位置使用QWidget的setPos()方法来设置鼠标的位置。 下面分别来介绍这两个方法 获取鼠标位置pos() pos()方法返回一个QPoint对象表示当前鼠标的位置。鼠标相对于屏幕的位置QPoint对象有两个属性x()表示横坐标y()表示纵坐标。你可以使用这两个属性来获取具体的坐标值。 设置鼠标位置setPos() setPos(x, y)方法允许你将鼠标的位置设置为指定的横纵坐标。你可以通过给定的x和y参数来指定新的坐标。x和y参数可以是一个整数或浮点数类型的值表示相应的坐标位置。 在以上代码的基础上加上以下代码 current_cursor window.cursor() print(current_cursor.pos()) # 打印当前鼠标的位置 current_cursor.setPos(0, 0) # 移动鼠标到屏幕左上角 print(current_cursor.pos()) # 打印当前鼠标的位置运行结果 鼠标跟踪 在PyQt中可以使用setMouseTracking()和hasMouseTracking()这两个API函数来设置和查询鼠标跟踪功能。 setMouseTracking()函数 setMouseTracking(enable)允许你开启或关闭鼠标跟踪功能。enable参数是一个布尔值如果为True则开启鼠标跟踪功能如果为False则关闭鼠标跟踪功能。不跟踪鼠标移动时必须处于按下状态才会触发mouseMoveEvent事件。跟踪鼠标移动时不处于按下状态也会触发mouseMoveEvent事件。 hasMouseTracking()函数 hasMouseTracking()函数会返回一个布尔值表示当前QWidget是否开启了鼠标跟踪功能。 以下是一个使用鼠标跟踪功能的示例代码 from PyQt5.QtWidgets import * import sysclass MyWindow(QWidget):def __init__(self, parentNone):super().__init__(parent)def mouseMoveEvent(self, me):print(鼠标移动了)if __name__ __main__:app QApplication(sys.argv)window MyWindow()window.resize(300, 300)window.show()sys.exit(app.exec_())运行结果 当鼠标放在控件内未按下鼠标左键时鼠标未进行跟踪当长按鼠标左键并移动时才会触发鼠标跟踪事件。 若在主程序中就设置鼠标跟踪观察其结果 window.setMouseTracking(True) # 设置鼠标跟踪 print(window.hasMouseTracking()) # 打印鼠标跟踪状态运行结果 当鼠标移动到控件内未按下鼠标左键只移动会直接触发鼠标跟踪事件这是因为在程序中设置了鼠标跟踪。 在以上代码的基础上使用globalPos()方法打印鼠标的全局位置相对于屏幕使用localPos()方法打印局部位置相对于控件 def mouseMoveEvent(self, me):print(全局位置, me.globalPos())print(局部位置, me.localPos())运行结果 鼠标跟踪案例 案例创建一个窗口内部有一个label控件。 要求 鼠标移入窗口时让label位置跟随鼠标位置。让鼠标设置为指定图片 以上案例的代码 from PyQt5.QtWidgets import * from PyQt5.QtGui import QPixmap, QCursor import sysclass MyWindow(QWidget):def __init__(self, parentNone):super().__init__(parent)# 设置窗口标题和大小self.setWindowTitle(鼠标跟踪案例)self.resize(500, 500)# 设置鼠标pixmap QPixmap(mouse.png).scaled(50, 50)cursor QCursor(pixmap, 0, 0) # 设置热点为鼠标左上角self.setCursor(cursor)self.setMouseTracking(True) # 开启鼠标跟踪# 设置标签label QLabel(self)label.setText(我爱Python我学PyQt)label.setStyleSheet(background-color: cyan;)def mouseMoveEvent(self, me):# 让标签跟踪鼠标label self.findChild(QLabel)label.move(me.localPos().x(), me.localPos().y())if __name__ __main__:app QApplication(sys.argv)window MyWindow()window.show()sys.exit(app.exec_())运行结果
http://www.w-s-a.com/news/784800/

相关文章:

  • 谁用fun域名做网站了网络营销的三种方式
  • 织梦网站上传天津网站建设电话咨询
  • 论坛网站搭建深圳网
  • 天津建立网站营销设计window7用jsp做的网站要什么工具
  • 英文网站wordpress所有图片
  • 我做的网站怎么打开很慢网络营销典型企业
  • 新增备案网站python3网站开发
  • 诊断网站seo现状的方法与通信工程专业做项目的网站
  • 南京 微网站 建站alexa排名查询统计
  • 天津网站建设企业系统wordpress已发布不显示不出来
  • 大连网站前端制作公司局域网视频网站建设
  • 张家界建设局网站电话wordpress网站怎么建
  • 淄博网站建设有实力装修培训机构哪家最好
  • 彩票网站建设seo优化师是什么
  • 怎么做英文网站网站建设基本费用
  • dede网站名称不能保存wordpress运费设置
  • 出口网站制作好一点的网站建设
  • 在小说网站做编辑怎么找韶关市建设局网站
  • 网站策划怎么做内容旅游型网站建设
  • 东莞百度网站推广ppt模板免费下载的网站
  • 网站建设项目管理基本要求网站空间到期影响
  • 做奖杯的企业网站谁有推荐的网址
  • wordpress能做企业站吗wordpress收发邮件
  • 电子产品网站建设策划方案腾讯企业邮箱注册申请免费
  • 哪些网站可以免费做代码自己电脑做网站服务器广域网访问
  • 高端网站设计青海省教育厅门户网站学籍查询
  • 长春网站优化公司网站制作400哪家好
  • 县级门户网站建设的报告开发游戏的软件有哪些
  • 做电子商务的网站wordpress带会员中心
  • 网站域名不变网站可以从做吗网站建设步骤 文档