PyQt5每天必学之带有标签的复选框

yipeiwu_com7年前Python基础

QCheckBox 是具有两种状态的控件:开和关。它是一个带有标签的复选框。复选框通常用于表示应用程序可以启用或禁用的功能。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
PyQt5 教程

在这个例子中,一个QCheckBox控件用于切换窗口的标题。

作者:我的世界你曾经来过
博客:http://blog.csdn.net/weiaitaowang
最后编辑:2016年8月3日
"""

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox
from PyQt5.QtCore import Qt

class Example(QWidget):

  def __init__(self):
    super().__init__()

    self.initUI()

  def initUI(self):

    cb = QCheckBox('显示标题', self)
    cb.move(20, 20)
    cb.toggle()
    cb.stateChanged.connect(self.changeTitle)

    self.setGeometry(300, 300, 250, 150)
    self.setWindowTitle('复选框')    
    self.show()

  def changeTitle(self, state):

    if state == Qt.Checked:
      self.setWindowTitle('复选框')
    else:
      self.setWindowTitle('')

if __name__ == '__main__':

  app = QApplication(sys.argv)
  ex = Example()
  sys.exit(app.exec_())

在我们的例子中,我们将创建一个复选框进行窗口标题的切换。

cb = QCheckBox('显示标题', self)

用QCheckBox 创建复选框

cb.toggle()

创建复选框时已经设置了控件的标题。默认情况下,复选框是不被选中的。toggle是设置复选框默认为选中。

cb.stateChanged.connect(self.changeTitle)

复选框的状态更改stateChanged信号连接到changeTitle方法(槽)。

def changeTitle(self, state):

    if state == Qt.Checked:
      self.setWindowTitle('复选框')
    else:
      self.setWindowTitle('')

复选框控件的状态改变传递给changeTitle方法的参数state。如果复选框控件被选中,设置窗口的标题。否则,我们设置一个空字符串的标题栏。(空标题时Python会将标题定义成Python)

程序执行后

这里写图片描述 这里写图片描述

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

如何在sae中设置django,让sae的工作环境跟本地python环境一致

sae中安装有python环境,想让sae导入自己下载的django或者其他模块,可以在svn中新建一个文件目录,比如site-packages,跟python安装目录一样,这个目录存放...

详解Python中heapq模块的用法

详解Python中heapq模块的用法

heapq 模块提供了堆算法。heapq是一种子节点和父节点排序的树形数据结构。这个模块提供heap[k] <= heap[2*k+1] and heap[k] <= hea...

Python实现的读取/更改/写入xml文件操作示例

本文实例讲述了Python实现的读取/更改/写入xml文件操作。分享给大家供大家参考,具体如下: 原始文档内容(test.xml): <?xml version="1....

Python上下文管理器和with块详解

上下文管理器和with块,具体内容如下 上下文管理器对象存在的目的是管理 with 语句,就像迭代器的存在是为了管理 for 语句一样。 with 语句的目的是简化 try/finall...

利用python发送和接收邮件

利用python发送和接收邮件

关于电子邮件  大学之前,基本不用邮箱,所以基本感觉不到它的存在,也不知道有什么用;然而大学之后,随着认识的人越来越多,知识越来越广泛,邮箱已然成为很重要的通讯工具,大学一些...