PyQt学习笔记

1.PyQt和Qt的区别

         很多开发语言都有自己的GUI界面程序开发框架,比如C++的Qt和MFC,Python的Tkinter、WxPython、PyQt、Kivy 等[1]。个人感觉PyQt和Kivy设计的界面比较好看,WxPython等界面感觉有些过时。

       PyQt5只是使用了和Qt一样的类方法和属性,等于是使用Python代码重写了Qt框架。Qt官方自己所出的Python GUI框架是PySide,但是PySide使用人数不多,很多问题都有待解决,暂时还没有推广开来,所以不建议大家学习,特别是初学者。

      初学者最好从PyQt5开始接触Python GUI开发,主要原因是PyQt5使用者很多,遇到问题网上到处都能找到解决方法,其次PyQt5的语法和PySide几乎相同,都是按照Qt的类方法和属性写出来的,所以学好PyQt5之后再去熟悉PySide非常简单。

       如果你还没有了解PyQt5和Qt是什么关系,那简单的来说就是,Tkinter是Python的亲儿子,PySide是Qt的亲儿子,PyQt5是Python和Qt他们两生的儿子。关系复杂,希望你能理解。

参考文献

[1] 2021年开发Python图形用户界面(GUI)的6种最佳Python GUI框架

 [2] PyQt5视频教程_PyQt5菜鸟教程_Python_GUI编程网

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
PyQt中的事件(event)是指与用户交互、系统操作或其他操作相关的动作或状态变化。在PyQt中,可以使用QEvent类和相关方法处理和管理事件。 在给定的代码示例中,通过继承QWidget类并重写eventFilter()方法,可以使用QEvent处理鼠标事件。在eventFilter()方法中,通过判断事件类型(event.type())为QEvent.MouseButtonPress来处理鼠标点击事件,并打印出鼠标点击的坐标。通过调用super().eventFilter(obj, event)将事件传递给父类进行处理。 同时,在PyQt中,还可以使用其他与QEvent相关的方法来处理事件。例如,使用QObject.installEventFilter()方法来安装事件过滤器,QObject.event()方法来处理事件,QCoreApplication.sendEvent()和QCoreApplication.postEvent()方法来发送事件,以及QCoreApplication.processEvents()方法来处理所有待处理的事件。 总结而言,PyQt中的事件是通过QEvent类和相关方法来处理和管理的,这些方法包括QObject.event()、QObject.installEventFilter()、QCoreApplication.sendEvent()、QCoreApplication.postEvent()和QCoreApplication.processEvents()。通过重写eventFilter()方法,可以使用QEvent处理特定类型的事件,如鼠标事件。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [PyQt学习笔记Qt事件处理QEvent详解python](https://blog.csdn.net/ai52learn/article/details/131180266)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [PyQt学习随笔:Qt事件类QEvent详解](https://blog.csdn.net/LaoYuanPython/article/details/102527965)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无敌三角猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值