PyQt5教程——组件(7)】的更多相关文章

这部分的教程将会继续介绍PyQt5的组件.我们这节教程的内容将包括像素图(QPixmap),单行文本框(QLineEdit)和下拉列表框(QComboBox) 像素图(QPixmap) 像素图(QPixmap)是各种用于处理图像的组件中的一个.它是在屏幕上显示图片的最佳选择.在我们代码例子中,我们将使用像素图来在窗口上显示一个图片. #!/usr/bin/python3 # -*- coding: utf-8 -*- """ ZetCode PyQt5 tutorial In…
PyQt5中的组件(widgets) 组件(widgets)是构建一个应用的基础模块.PyQt5有广泛的各式各样的组件,包含按钮,复选按钮,滑块条,和列表框.在这个部分的教程中,我们将学习几种有用的组件:复选按钮(QCheckBox),切换按钮(ToggleButton),滑块条(QSlider),进度条(ProgressBar)和日历组件(QCalendarWidget).   复选框(QCheckBox) 复选框组件有两种状态:选中和未选中.它是由一个选择框和一个标签组成的.一个应用中,复选…
PyQt5中的对话框 对话框窗口或对话框是大多数主流GUI应用不可缺少的部分.对话是两个或更多人之间的会话.在计算机应用中,对话框是一个用来和应用对话的窗口.对话框可以用来输入数据,修改数据,改变应用设置等等.   输入对话框 QInputDialog提供了一个简单便利的对话框用于从用户那儿获得只一个值.输入值可以是字符串,数字,或者一个列表中的列表项. #!/usr/bin/python3 # -*- coding: utf-8 -*- """ ZetCode PyQt5…
PyQt5中的事件和信号 在这部分PyQt5编程教程中,我们探索应用中事件和信号的发生. 事件 所有的GUI应用都是事件驱动的.事件主要由应用的用户操作产生的.但是事件可能由其他条件触发,比如:一个网络连接,一个窗口管理器,一个定时器,这些动作都可能触发事件的产生.当我们调用应用的exec_()方法时,应用进入了主循环.主循环用于检测事件的产生并且将事件送到用于处理的对象中去. 在事件模型,有三个参与者 事件源 事件对象 事件目标 事件源是状态发生改变的对象.它产生了事件.事件对象(evnet)…
PyQt5中的布局管理 布局管理是GUI编程中的一个重要方面.布局管理是一种如何在应用窗口上防止组件的一种方法.我们可以通过两种基础方式来管理布局.我们可以使用绝对定位和布局类. 绝对定位 程序指定了组件的位置并且每个组件的大小用像素作为单位来丈量.当你使用了绝对定位,我们需要知道下面的几点限制: 如果我们改变了窗口大小,组件的位置和大小并不会发生改变. 在不同平台上,应用的外观可能不同 改变我们应用中的字体的话可能会把应用弄得一团糟. 如果我们决定改变我们的布局,我们必须完全重写我们的布局,这…
PyQt5中的菜单和工具栏 在这部分的PyQt5教程中,我们将创建菜单和工具栏.菜单式位于菜单栏的一组命令操作.工具栏是应用窗体中由按钮和一些常规命令操作组成的组件. 主窗口 QMainWindow类提供了一个应用主窗口.默认创建一个拥有状态栏.工具栏和菜单栏的经典应用窗口骨架. 状态栏 状态栏是用来显示状态信息的组件. #!/usr/bin/python3 # -*- coding: utf-8 -*- """ ZetCode PyQt5 tutorial This pro…
用PyQt5写的第一个程序 在这篇PyQt5教程中,我们可以学习一些PyQt5的基础应用. 简单的例子 这是一个显示一个小窗口的简单例子.我们可以做许多这样的窗口.我们可以调整它的窗口尺寸,最大化或最小化这个窗口.这些需求需要码很多代码.但一些人已经写好了这些功能实现.因为这些需求在很多应用中重复出现了,在这里我们不需要重新写这些代码.PyQt5是一个高级工具套件,为我们封装了很多复杂功能的实现代码,我们可以更加简单的通过函数去实现这些功能.如果我们是在一个低级工具套件中写代码的话,下面例子的代…
PyQt5教程阅读须知 “PyQt5教程”系列若不做明显提示,默认翻译自zetcode. 有需要翻译精度的朋友可以自行阅读英文文档. 如果本系列博文侵犯了您的合法权益,请在博客中留下评论或联系:chen_dev@outlook.com.我会及时修改和删除. 本PyQt5教程系列其他博文中将不做另外声明. PyQt5介绍 这是一份PyQt5的教程.教程的目的是让你开始学会使用PyQt5工具包.这个教程的内容在Linux上创建并测试. PyQt5相关 PyQt5是一套来自Digia的Qt5应用框架和…
组件 Omi框架完全基于组件体系设计,我们希望开发者可以像搭积木一样制作Web程序,一切皆是组件,组件也可以嵌套子组件形成新的组件,新的组件又可以当作子组件嵌套至任意组件形成新的组件... 简单组件 这里使用Todo的例子来讲解Omi组件体系的使用. class Todo extends Omi.Component { constructor(data) { super(data); } add (evt) { evt.preventDefault(); this.data.items.push…
组件通讯 Omi框架组建间的通讯非常遍历灵活,因为有许多可选方案进行通讯: 通过在组件上声明 data-* 传递给子节点 通过在组件上声明 data 传递给子节点 父容器设置 childrenData 自动传递给子节点 完全面向对象,可以非常容易地拿到对象的实例,之后可以设置实例属性和调用实例的方法 所以通讯变得畅通无阻,下面一一来举例说明. data-*通讯 class Hello extends Omi.Component { constructor(data) { super(data);…