PyQt5事件处理】的更多相关文章

事件介绍 事件的处理机制非常的复杂,属于PyQt底层的事,不必我们关心,学会使用就行.如果说事件是用来创建窗口,那么信号与槽就是用来对这个控件进行处理.事件属于低级的处理方式,信号与槽是高级的处理方式,一般信号与槽处理不了的问题,再使用事件处理.信号与槽功能强大使用简单但是不能解决所有的问题,事件使用麻烦但是可以处理全部的问题.事件的处理主要是重载类方法,信号与槽的处理主要是绑定.发送以及处理. 事件 重写mousePressEvent,keyPressEvent,paintEvent等方法,最…
引言 找了很多Python GUI工具集,还是觉得PyQt比较理想,功能强大跨平台,还支持界面设计器.花一天时间折腾了Ubuntu14.04(32位)+ Python3.4 + Qt5.3.2 + PyQt5.3.2 + Eric6.0 的完整开发平台的搭建,各种出错差点放弃了,好在终于一一解决了,记录下来以后搭建起来方便点. 安装Python3.4 Ubuntu14.04貌似默认安装了Python2.7 和Python3.4.故Python3.4的安装可略去. 安装Qt5 Ubuntu14.0…
Qt支持程序多点触控,就想使用PyQt5做一个触控画板,经过几番周折,查阅了TouchEvent官方文档,又参考了一篇QT for Android的例子,采用eventfilter过滤器来识别触屏事件和鼠标事件,分别作出处理: 其中鼠标事件(用鼠标绘画)固定宽度,触摸事件呢(触摸屏上绘画)采用ellipseDiameters()获取触摸点的宽度,作为笔触宽度. 具体代码见:GitHub import sys import math from PyQt5.QtWidgets import QApp…
在学完tkinter后,发现tkinter在布局方面特别的不方便(Tkinter资料:http://effbot.org/tkinterbook/tkinter-index.htm),因此学习pyqt5,之前用tkinter写了一个简单的python入门教程的exe,基本都是面向过程的编程思想,很少将函数式编程思想和面向对象的思想,在学习pyqt5的过程中,希望培养面向对象编程的思想!关于pyqt5的学习主要参考下面的教程,部分知识及代码相当于是对PyQt5 tutorial的总结! http:…
一.PyQt5基础   1.1 创建窗口 import sys from PyQt5.QtWidgets import QApplication, QWidget if __name__ == '__main__': app = QApplication(sys.argv) window = QWidget() window.resize(300, 500) window.move(200, 200) window.setWindowTitle("First Qt") window.s…
一. 简单窗口 这个简单的小例子展示的是一个小窗口.但是我们可以在这个小窗口上面做很多事情,改变大小,最大化,最小化等,这需要很多代码才能实现.这在很多应用中很常见,没必要每次都要重写这部分代码,Qt已经提供了这些功能.PyQt5是一个高级的工具集合,相比使用低级的工具,能省略上百行代码. #!/usr/bin/python3 # -*- coding: utf-8 -*- """ ZetCode PyQt5 tutorial In this example, we crea…
PyQt中提供了两种针对事件处理的机制:一种是事件,另一种则是信号和槽. 一.事件 事件处理在PyQt中是比较底层的,常用的事件有键盘事件.鼠标事件.拖放事件.滚轮事件.定时事件.焦点事件.进入和离开事件(光标移入控件或者移出),移动事件(窗口位置变化),显示和隐藏事件,窗口事件(窗口是否为当前窗口).以及常见的Qt事件:Socket事件.剪贴板事件.文字改变事件,布局改变事件等. 针对这些事件,PyQt提供了多种事件处理和过滤方法,其中最常用的有两种: (1)重写事件具体的函数(例如:mous…
一.初识PyQt5 对于桌面程序开发,用户图形界面(GUI)的设计非常重要.一款美观.易用的用户界面可以很大程度上提高对使用这的友好度.由于Python最初是作为脚本语言开发,并没有GUI功能.但Python具有强大的扩展能力,目前已有相当多的控件集可供使用.目前主流的控件集有:PyQt.Tkinter.wxPthon等.PyQt是Qt专美为PyQt提供的GUI扩展. PyQt5主要模块如下: QtCore :模块包含了非GUI的功能设计.这个模块被用来实现时间,文件和目录,不同数据类型,流,U…
下面简单介绍一下pyQT4和pyQT5的主要模块 pyQT4 的主要模块 QtCore 模块包括了核心的非GUI功能,该模块用来对时间.文件.目录.各种数据类型.流.网址.媒体类型.线程或进程进行处理. QtGui 模块包括图形化窗口部件和及相关类.包括如按钮.窗体.状态栏.滑块.位图.颜色.字体等等. QtHelp 模块包含了用于创建和查看可查找的文档的类. QtNetwork 模块包括网络编程的类.这些类可以用来编写TCP/IP和UDP的客户端和服务器.它们使得网络编程更容易和便捷. QtO…
PyQt5说明 pyqt5是一套Python绑定Digia QT5应用的框架.它可用于Python 2和3.本教程使用Python 3.Qt库是最强大的GUI库之一.pyqt5的官方网站http://www.riverbankcomputing.co.uk/news. pyqt5做为Python的一个模块,它有620多个类和6000个函数和方法.这是一个跨平台的工具包,它可以运行在所有主要的操作系统,包括UNIX,Windows,Mac OS.pyqt5是双重许可.开发者可以在GPL和商业许可之…
pyqt5简介: yQt5的类存在与如下模块当中: ● QtCore ● QtGui ● QtWidgets ● QtMultimedia ● QtBluetooth ● QtNetwork ● QtPositioning ● Enginio ● QtWebSockets ● QtWebKit ● QtWebKitWidgets ● QtXml ● QtSvg ● QtSql ● QtTest QtCore模块涵盖了包的核心的非GUI功能,此模块被用于处理程序中涉及到的 time.文件.目录.数…
Qtwidgets模块包含创造经典桌面风格的用户界面提供了一套UI元素的类 Qtwidegts下还有以下常用对象,所以一般使用Qtwidegts时会使用面向对象式编程 QApplication: app应用程序对象 QWidget: :窗口部件对象,可设置窗口的位置大小setGeometry(位置大小),和标题title 和展示show功能 QPushButton:按钮对象,用于创建按钮 btn = QPushButton('Button', self) btn.setToolTip('This…
首先安装pyqt5的包,然后打开notebook就可以编写了.当然这样编写,也可以用designer进行. 它是pyqt5-tools的一个exe软件,\Anaconda3\Lib\site-packages\pyqt5_tools\designer.exe,可以实现可视化编辑, 然后通过 pyuic5 -o 目标文件名.py 源文件名.ui 转化后,将源文件进行修改就可以实现对应界面了. 可能需要之类,还是看ma吧 : import sys from PyQt5.QtWidgets impor…
QtCore  包含了核心的非GUI功能.此模块用于处理时间.文件和目录.各种数据类型.流.URL.MIME类型.线程或进程. QtGui  包含类窗口系统集成.事件处理.二维图形.基本成像.字体和文本. QtWidgets  模块包含创造经典桌面风格的用户界面提供了一套UI元素的类. QtMultimedia  包含的类来处理多媒体内容和API来访问相机和收音机的功能. QtBluetooth  模块包含类的扫描设备和连接并与他们互动.描述模块包含了网络编程的类.这些类便于TCP和IP和UDP…
信号 & 槽 import sys from PyQt5.QtCore import Qt from PyQt5.QtWidgets import (QWidget,QLCDNumber,QSlider,QVBoxLayout,QApplication) class Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): lcd=QLCDNumber(self) sld=QS…
PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流操作系统(如Unix,windows,Mac OS)上运行的跨平台的工具包. PyQt4的类库可分为以下模块: QtCore QtGui QtNetwork QtXml QtSvg QtOpenGL QtSql 其中QtCore包含了PyQt非GUI功能模块的核心部分,这个模块用来对时间.文件和目录…
PyQt5 是Digia的一套Qt5与python绑定的应用框架,同时支持2.x和3.x.本教程使用的是3.x.Qt库由Riverbank Computing开发,是最强大的GUI库之一 ,官方网站:www.riverbankcomputing.co.uk/news. PyQt5是由一系列Python模块组成.超过620个类,6000和函数和方法.能在诸如Unix.Windows和Mac OS等主流操作系统上运行.PyQt5有两种证书,GPL和商业证书. PyQt5类分为很多模块,主要模块有:…
[说明] 本文用 PyQt5 的QTimer类的两种方式实现电子时钟 [效果图] [知识点] QTimer类提供了定时器信号/槽和单触发定时器. 它在内部使用定时器事件来提供更通用的定时器. QTimer很容易使用:创建一个QTimer,使用start()来开始并且把它的timeout()连接到适当的槽.当这段时间过去了,它将会发射timeout()信号. [实现] 1.定时器信号/槽方式 class MyTimer(QWidget): def __init__(self, parent = N…
1 PyQt5整体介绍 PyQt5是基于图形程序框架Qt5的Python语言实现,由一组Python模块构成. PyQt5的官方网站是:www.riverbankcomputing.co.uk. PyQt5模块介绍的官网地址是:http://pyqt.sourceforge.net/Docs/PyQt5/introduction. html,如图A-1所示. PyQt5包括的主要模块如下. QtCore模块--涵盖了包的核心的非GUI功能,此模块被用于处理程序中涉及的时间.文件.目录.数据类型.…
PyQt5中的组件(widgets) 组件(widgets)是构建一个应用的基础模块.PyQt5有广泛的各式各样的组件,包含按钮,复选按钮,滑块条,和列表框.在这个部分的教程中,我们将学习几种有用的组件:复选按钮(QCheckBox),切换按钮(ToggleButton),滑块条(QSlider),进度条(ProgressBar)和日历组件(QCalendarWidget).   复选框(QCheckBox) 复选框组件有两种状态:选中和未选中.它是由一个选择框和一个标签组成的.一个应用中,复选…
PyQt5中的事件和信号 在这部分PyQt5编程教程中,我们探索应用中事件和信号的发生. 事件 所有的GUI应用都是事件驱动的.事件主要由应用的用户操作产生的.但是事件可能由其他条件触发,比如:一个网络连接,一个窗口管理器,一个定时器,这些动作都可能触发事件的产生.当我们调用应用的exec_()方法时,应用进入了主循环.主循环用于检测事件的产生并且将事件送到用于处理的对象中去. 在事件模型,有三个参与者 事件源 事件对象 事件目标 事件源是状态发生改变的对象.它产生了事件.事件对象(evnet)…
用PyQt5写的第一个程序 在这篇PyQt5教程中,我们可以学习一些PyQt5的基础应用. 简单的例子 这是一个显示一个小窗口的简单例子.我们可以做许多这样的窗口.我们可以调整它的窗口尺寸,最大化或最小化这个窗口.这些需求需要码很多代码.但一些人已经写好了这些功能实现.因为这些需求在很多应用中重复出现了,在这里我们不需要重新写这些代码.PyQt5是一个高级工具套件,为我们封装了很多复杂功能的实现代码,我们可以更加简单的通过函数去实现这些功能.如果我们是在一个低级工具套件中写代码的话,下面例子的代…
PyQt5教程阅读须知 “PyQt5教程”系列若不做明显提示,默认翻译自zetcode. 有需要翻译精度的朋友可以自行阅读英文文档. 如果本系列博文侵犯了您的合法权益,请在博客中留下评论或联系:chen_dev@outlook.com.我会及时修改和删除. 本PyQt5教程系列其他博文中将不做另外声明. PyQt5介绍 这是一份PyQt5的教程.教程的目的是让你开始学会使用PyQt5工具包.这个教程的内容在Linux上创建并测试. PyQt5相关 PyQt5是一套来自Digia的Qt5应用框架和…
PyQt5 PyQt5是一个基于强大的图形程式框架Qt5的python接口, 主要包含以下几个大类: ● QtCore ● QtGui ● QtWidgets ● QtMultimedia ● QtBluetooth ● QtNetwork ● QtPositioning ● Enginio ● QtWebSockets ● QtWebKit ● QtWebKitWidgets ● QtXml ● QtSvg ● QtSql ● QtTest QtCore模块涵盖了包的核心的非GUI功能,此模块…
学习PyQt5是个机缘,那是因为我的linux16.04+python3.6使了浑身解数也装不上PyQt4! PyQt5的官方文档貌似是要钱的!又想快速了解这个东东,我还是借鉴了万能的博客园大佬博主:https://home.cnblogs.com/u/archisama/ 看样子是翻译的文档,很清晰.不过至今仍然很晕乎,这个东东对我写接口到底有多大用处 我是直接用pycharm写PyQt5 代码的,不过网上很多人说要配置一下环境https://www.cnblogs.com/dalanjing…
The QtCore module contains the core non-GUI functionality. This module is used for working with time, files and directories, various data types, streams, URLs, mime types, threads or processes. QtCore 模块包含了非GUI的功能设计.这个模块被用来实现时间,文件和目录,不同数据类型,流,URL,mim…
文章目录PyQt5程序基本格式QMainWindow主窗口QLabel标签QTextBrowser文本浏览器QTextEdit文本编辑器QPushButton按键QCheckBox复选框QRadioButton单选按钮QMessageBox弹框QSlider滑动条QDialog提示窗口QFileDialog打开文件或文件夹QTreeView目录树结构QTimer计时器QSystemTrayIcon托盘常用操作获取屏幕分辨率获取屏幕截图设置窗口随内容大小自动变化获取鼠标事件QPixmap对象转字节…
一. 引言 在上节<第15.6节 PyQt5安装与配置>结束了PyQt5的安装和配置过程,本节将编写一个简单的PyQt5应用,介绍基本的PyQt5应用的文件组成及相关工具的使用. 本节的应用是要创建一个简单媒体播放器的界面,但暂不实现真正的播放器相关代码,只是点击时给出提示. 二. 创建工程 在PyCharm中新建MediaPlayer工程,进入界面后只有一个空的工程文件目录: 三. 图形界面设计 1. 通过tools->External Tools->PyQtDesigner打开…
一.简介 pyqt5做为Python的一个模块,它有620多个类和6000个函数和方法.这是一个跨平台的工具包,它可以运行在所有主要的操作系统,包括UNIX,Windows,Mac OS.pyqt5是双重许可.开发者可以在GPL和商业许可之间进行选择. pyqt5的类别分为几个模块,包括以下: QtCore QtGui QtWidgets QtMultimedia QtBluetooth QtNetwork QtPositioning Enginio QtWebSockets QtWebKit…
目录 PyQt5库(一) 一. 简介 1. 什么是 Qt 2. 什么是PyQt 3. 环境搭建 二. 基本结构 1. 第一个程序 2. 控件操作 3. 快速生成代码 4. 面向对象 三. 基类控件 1. QObject 1.1 设置标识 1.1.1 语法 1.1.2 应用场景 1.3 父子对象 1.3.1 语法 1.3.2 应用场景 1.4 信号操作 1.4.1 信号与槽机制 1.4.2 机制描述 1.4.3 信号处理 1.4.4 案例 1.5 类型判定 1.5.1 语法 1.5.2 案例 1.…