Python 3+ PyQT5的入门使用

窗口类型介绍

QMainWindow,QWidget和QDialog都是用来创建窗口的.可以直接使用也可以继承后再使用.

  1. QMainWindow
    该类窗口可以包括菜单栏,工具栏,状态栏,标题栏等,是最常见的窗口形式,也是GUI程序的主窗口.
  2. QWidget
    该类窗口比较通用,它可以作为顶层窗口(作父窗口),也可以嵌入到其他窗口(作子窗口).如果不确定窗口的定位,就可以使用该类窗口.为什么这个类这么通用呢?是因为QWidget是所有用户界面对象的基类.所有窗口和控件都直接或者间接继承QWidget类.
  3. QDialog
    该类窗口是对话框窗口基类.主要用于执行短期任务,或者与用户进行交互.它可以是模态的,也可以是非模态的.该类窗口没有菜单栏,工具栏和状态栏等.

创建主窗口

  • 没有父窗口的窗口就是顶层窗口(个人理解:根窗口)
  • 在PyQT中,QMainWindow窗口中会有一个控件(QWidget),它是用来占位置的,占据着中心窗口.可以使用setCentralWidget()来设置中心窗口.
    这里是图片(暂时没有写入图片地址)
  • 注意QMainWindow不能设置布局(使用setLayout()方法),因为它有自己的布局.

QMainWindow类中常用的方法

方法 描述
addToolBar() 添加工具栏
centralWidget() 返回窗口中心的一个控件,未设置的时候返回null
menuBar() 返回主窗口的菜单栏
setCentralWidget() 设置窗口中心的控件
setStatusBar() 设置状态栏
statusBar() 获得状态栏对象后,调用状态栏对象的
showMessage(message,int timeout=0)方法显示状态栏信息.
第一个参数是显示状态栏的信息;第二个参数是信息停留时间,
单位是毫秒,默认是0,表示一直显示状态栏信息.

创建一个简单的主窗口

import sys
from PyQt5.QtWidgets import QMainWindow,QApplication
class MainWindow(QMainWindow):
    def __init__(self,parent=None):
        super(MainWindow,self).__init__(parent)
        self.resize(400,200) # 设置窗口的大小
        self.status = self.statusBar() # 实例化状态栏
        self.status.showMessage("这是状态栏显示",5000) # 显示状态栏信息
        self.setWindowTitle("PyQt简单的主窗口") # 设置窗口的标题
if __name__ == "__main__":
    app = QApplication(sys.argv)
    form = MainWindow()  # 实例化对象
    form.show() # 显示窗口
    sys.exit(app.exec_())

窗口全屏/最大化/最小化

待续...

Python PyQT5的入门使用的更多相关文章

  1. Python学习--01入门

    Python学习--01入门 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.和PHP一样,它是后端开发语言. 如果有C语言.PHP语言.JAVA语言等其中一种语言的基础,学习Py ...

  2. Python简单爬虫入门三

    我们继续研究BeautifulSoup分类打印输出 Python简单爬虫入门一 Python简单爬虫入门二 前两部主要讲述我们如何用BeautifulSoup怎去抓取网页信息以及获取相应的图片标题等信 ...

  3. Python简单爬虫入门二

    接着上一次爬虫我们继续研究BeautifulSoup Python简单爬虫入门一 上一次我们爬虫我们已经成功的爬下了网页的源代码,那么这一次我们将继续来写怎么抓去具体想要的元素 首先回顾以下我们Bea ...

  4. Python不完全入门指南

    适用范围: 有一定编程基础,想快速入门python的人群 说明: 使用jupyter notebook编写,可以使用nbviewer网站进行查看. Python不完全入门指南 项目放在github上, ...

  5. GJM : Python简单爬虫入门(二) [转载]

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  6. Python第一天——入门Python(1)数据定义

    数据类型: 什么是数据? 在计算机科学中,数据是指所有能输入到计算机并被计算机程序处理的符号的介质的总称,是用于输入电子计算机进行处理,具有一定意义的数字字母.符号和模拟量等的统称.现在计算机存储和处 ...

  7. Python系列之入门篇——HDFS

    Python系列之入门篇--HDFS 简介 HDFS (Hadoop Distributed File System) Hadoop分布式文件系统,具有高容错性,适合部署在廉价的机器上.Python ...

  8. Python系列之入门篇——MYSQL

    Python系列之入门篇--MYSQL 简介 python提供了两种mysql api, 一是MySQL-python(不支持python3),二是PyMYSQL(支持python2和python3) ...

  9. Python 30分钟入门指南

    Python 30分钟入门指南 为什么 OIer 要学 Python? Python 语言特性简洁明了,使用 Python 写测试数据生成器和对拍器,比编写 C++ 事半功倍. Python 学习成本 ...

随机推荐

  1. php如何判断 0.0/0.00/0.000 是否为空? 测试过用empty函数不行

    if ( (int) $number == 0) echo 'empty'; if ( floatval($number) == 0 ) echo 'empty' 首先,PHP 认为 0.0 是空,同 ...

  2. php将两个数组相同的key合并到一个数组

    $arr = array(     array(     'id' => 1,     'user_name'=>'test1'     ),     array(     'id' =& ...

  3. PostgreSQL在win7上安装详细步骤

    原文:PostgreSQL在win7上安装详细步骤 PostgreSQL安装: 一.windows下安装过程 安装介质:postgresql-9.1.3-1-windows.exe(46M),安装过程 ...

  4. 有未经处理的异常(在 xx.exe 中): 堆栈 Cookie 检测代码检测到基于堆栈的缓冲区溢出。

    一般这个问题是数组越界. 我产生这个异常的代码是这句:memcpy(tmp_cert.byKey, m_row[2], 255); 255的长度超过了char数组tmp_cert.byKey的长度.

  5. 实现dropdownList 无刷新

    <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptMana ...

  6. 中国自主X86处理器工艺跃进:国产28nm升级16nm(上海兆芯)

    提到X86处理器,世人皆知Intel.AMD,殊不知还有个VIA(威盛),在Intel反垄断世纪大战中VIA公司作为Intel霸权的受害者也最终确认了X86授权,不过VIA与前面两家的实力相差太远,X ...

  7. 【产品】张小龙《微信背后的产品观》之PPT完整文字版

    张小龙<微信背后的产品观>之PPT完整文字版 附:PPT下载地址:https://wenku.baidu.com/view/99d2910290c69ec3d5bb7573.html  微 ...

  8. 【Web前端Talk】无聊吗?写个【飞机大战】来玩吧(下篇)

    上一篇介绍了如何使用cocos creator开发游戏,此篇是详细介绍功能点以及如何部署打包至微信小游戏体验. 欢迎关注我们的公众号:Web前端Talk.前端文章持续更新. 资源管理制作 1.准备工具 ...

  9. SYN6105型 GPS子钟

    SYN6105型 GPS子钟 产品概述 SYN6105型GPS子钟是由西安同步电子科技有限公司精心设计.自行研发生产的一套以接收GPS卫星信号的子钟,从GPS地球同步卫星上获取标准时钟信号信息将这些时 ...

  10. windows pyspider WEB显示框太小解决方法

    环境:windows7 + chrome + pyspider 解决方法: WEB预览框过小的原因在于页面元素的css属性height被替换为60px: CSS文件所在地方:C:\Users\Admi ...