PyQt5使用笔记

  1. 创建一个小窗口
    import sys
    from PyQt5.QtWidgets import * #程序实例化
    app = QApplication(sys.argv) # #创建窗口对象 并显示
    # win = QWidget()
    # win.show() win = QWidget()
    #使用resize()方法设置窗口的大小为450*150;
    win.resize(450,120)
    #使用move()方法,将窗口移动到显示器上x=0,y=300的位置;
    win.move(600,300)
    #为窗口设置了一个标题。
    win.setWindowTitle('这是一个实例窗口')
    win.show() # 确保程序的关闭
    sys.exit(app.exec_())
  2. 在类中实现上述功能
    import sys
    from PyQt5.QtWidgets import QApplication,QWidget class GUi():
    def __init__(self):
    self.initUI() def initUI(self):
    self.win = QWidget()
    self.win.setWindowTitle('这是一实例窗口') if __name__ == '__main__':
    app = QApplication(sys.argv)
    gui = GUi()
    gui.win.show()
    sys.exit(app.exec_())
  3. 用继承大的方法实现上列代码
    import sys
    from PyQt5.QtWidgets import QApplication,QWidget class GUi(QWidget):
    def __init__(self):
    super().__init__()
    self.initUI() def initUI(self):
    self.setWindowTitle('这是一个小窗口')
    self.resize(400,400) if __name__ == "__main__":
    app = QApplication(sys.argv)
    gui = GUi()
    gui.show()
    sys.exit(app.exec_())
  4. 为窗口添加一点小小的功能
    import sys
    from PyQt5.QtWidgets import QMainWindow,QApplication class GUi(QMainWindow):
    def __init__(self):
    super().__init__()
    self.initUI() def initUI(self):
    self.setWindowTitle('这是一个测试')
    self.resize(400,400)
    # 设置状态消息栏文本
    self.statusBar().showMessage('一个状态栏') if __name__ == '__main__':
    app = QApplication(sys.argv)
    gui = GUi()
    gui.show()
    sys.exit(app.exec_())
  5. 添加第一个按钮
    import sys
    from PyQt5.QtWidgets import QApplication,QMainWindow,QAction class GUI(QMainWindow):
    def __init__(self):
    super().__init__()
    self.iniUI() def iniUI(self):
    self.setWindowTitle('测试1.0')
    self.statusBar().showMessage('文本状态栏')
    self.resize(600,600) #创建一个菜单栏
    menu = self.menuBar()
    #创建一个菜单按钮
    file_menu = menu.addMenu('文件')
    #创建一个行为
    new_action = QAction('添加文件',self)
    #添加一个行为到菜单
    file_menu.addAction(new_action)
    #更新状态栏文本
    new_action.setStatusTip("新的文件") if __name__ == "__main__":
    app = QApplication(sys.argv)
    gui =GUI()
    gui.show()
    sys.exit(app.exec_())
  6. 完善菜单功能键
    import sys
    from PyQt5.QtWidgets import QApplication,QMainWindow,QAction class GUI(QMainWindow):
    def __init__(self):
    super().__init__()
    self.iniUI() def iniUI(self):
    self.setWindowTitle('测试1.0')
    self.statusBar().showMessage('文本状态栏')
    self.resize(600,600) #创建一个菜单栏
    menu = self.menuBar()
    #创建两个菜单
    file_menu = menu.addMenu("文件")
    file_menu.addSeparator()
    edit_menu = menu.addMenu("修改") #创建一个行为
    new_action = QAction('新的文件',self)
    #更新状态栏文本
    new_action.setStatusTip("打开新的文件")
    #添加一个行文到菜单
    file_menu.addAction(new_action) #创建退出按钮
    exit_action = QAction('退出',self)
    #退出操作
    exit_action.setStatusTip("点击这里退出程序")
    #点击关闭程序
    exit_action.triggered.connect(self.close)
    #设置退出快捷键
    exit_action.setShortcut("Ctrl+Q")
    #添加退出行为到菜单上
    file_menu.addAction(exit_action)
    if __name__ == "__main__":
    app = QApplication(sys.argv)
    gui =GUI()
    gui.show()
    sys.exit(app.exec_())

1.0--->刚开始看这里的更多相关文章

  1. 《OOC》笔记(0)——为何要看这本书

    <OOC>笔记(0)——为何要看这本书 <OOC>全名是<Object-oriented Programming with ANSI-C>,作者Axel-Tobia ...

  2. 『王霸之路』从0.1到2.0一文看尽TensorFlow奋斗史

    ​ 0 序篇 2015年11月,Google正式发布了Tensorflow的白皮书并开源TensorFlow 0.1 版本. 2017年02月,Tensorflow正式发布了1.0.0版本,同时也标志 ...

  3. S0.0 计算机如何看东西

    标签(空格分隔):数字图像处理 opencv 当我们用特定软件打开一张图片或者更改某些位图的格式为txt时,就会发现图像的本质不过就是一堆数据罢了. 采样 我们可以用相机采样到一幅二维图像,图像的分辨 ...

  4. 【HTTP】402- 深入理解http2.0协议,看这篇就够了!

    本文字数:3825字 预计阅读时间:20分钟 导读 http2.0是一种安全高效的下一代http传输协议.安全是因为http2.0建立在https协议的基础上,高效是因为它是通过二进制分帧来进行数据传 ...

  5. Network Saboteur 分类: 搜索 POJ 2015-08-09 19:48 7人阅读 评论(0) 收藏

    Network Saboteur Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 10147 Accepted: 4849 Des ...

  6. Android 5.0 Lollipop初上手体验

    在等了好几天还没有等到OTA升级提示,前天笔者给Nexus4线刷入了官方提供的Lollipop的镜像,在试用了这两天之后,现在总结下自己感觉很惊艳的地方和一些地方的吐槽.(点击图片可以查看大图) 1. ...

  7. DotNetOpenAuth搭建OAuth2.0

    使用DotNetOpenAuth搭建OAuth2.0授权框架 标题还是一如既往的难取. 我认为对于一个普遍问题,必有对应的一个简洁优美的解决方案.当然这也许只是我的一厢情愿,因为根据宇宙法则,所有事物 ...

  8. Android6.0 init 深入分析

    之前写过一篇关于android5.0 init的介绍,这篇博客是介绍android6.0init,之前有的代码介绍不详细.而且分析 解析init.rc那块代码也没有结合init.rc介绍. 一. ma ...

  9. 对Linux0.11 中 进程0 和 进程1分析

    1. 背景 进程的创建过程无疑是最重要的操作系统处理过程之一,很多书和教材上说的最多的还是一些原理的部分,忽略了很多细节.比如,子进程复制父进程所拥有的资源,或者子进程和父进程共享相同的物理页面,拥有 ...

  10. 存储专栏:一句话说清RAID2.0

     今天,西瓜哥来谈谈高端存储的一股势力,RAID 2.0,最近被华为HVS搞得风生水起,神奇的让人摸不着头脑.我还是从一个高端存储的江湖说起吧. 据说很久很久以前(别扔臭鸡蛋,讲故事都是这样的…),L ...

随机推荐

  1. 小游戏大智慧,10 个让人眼前一亮的 JavaScript 游戏

    摘要: JS还可以这么玩~ Fundebug经授权转载,版权归原作者所有. 这是一篇有趣的文章,我们精选了 JS13K 游戏编程挑战的优秀作品,与大家分享.JS13K 是专为 JavaScript 开 ...

  2. 05 入门 - 浅谈 ASP.NET MVC程序的工作原理

    目录索引:<ASP.NET MVC 5 高级编程>学习笔记 本篇内容 1. Global.asax文件 2. RouteConfig.cs文件 3. 视图命名和寻址的规则 前面创建了一个简 ...

  3. EF时,数据库字段和实体类不一致问题

    场景:由于一些原因,实体中属性比数据库中字段多了一个startPage属性.PS:controllers中用实体类去接收参数,但是传入的参数比数据库中实体表多了一个字段, 这种情况下,应该建一个vie ...

  4. 006. SSO 单点登录(同域SSO/跨域SSO)

    SSO 单点登录:一次登录,处处登录. 只需在一个登录认证服务下进行登录后,就可访问所有相互信任的应用 同域 SSO 1. session-cookie机制:服务端通过cookie认证客户端. 用户第 ...

  5. 【Android】用Cubism 2制作自己的Live2D——官方App样例源码学习(2)!

    前言- 明确了项目目录的结构,但是结构什么的也太"抽象"了. 本篇开始上代码! 模型的绘制- 前几天的学习中,live2d的绘制有了一些了解了,在Android端使用OpenGL ...

  6. Android为TV端助力 使用shared注意事项

    不要存放大的key和value!我就不重复三遍了,会引起界面卡.频繁GC.占用内存等等,好自为之! 毫不相关的配置项就不要丢在一起了!文件越大读取越慢,不知不觉就被猪队友给坑了:蓝后,放进defalu ...

  7. Git创建本地版本库

    什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或 ...

  8. vue build报copy-webpack-plugin] unable to locate异常的解决方法

    ERROR in [copy-webpack-plugin] unable to locate 'J:\xxx\xxx\xxx\xxx\static' at 'J:\xxx\xxx\xxx\xxx\s ...

  9. 基于FPM制作nginx RPM包

    目录 环境 配置 FPM安装 环境 系统 其它 CentOS 7.5 需提前配置好epel 配置 [root@localhost ~]# yum clean all && yum ma ...

  10. 做优化的数据库工程师请参考!CynosDB的计算层设计优化揭秘

    本文由云+社区发表 本文作者:孙旭,腾讯数据库开发工程师,9年数据库内核开发经验:熟悉数据库查询处理,并发控制,日志以及存储系统:熟悉PostgreSQL(Greenplum,PGXC等).Terad ...