PyQt5每天必学之组合框

yipeiwu_com6年前Python基础

QComboBox 是一个允许用户从列表选项中选择一项的控件。

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

"""
PyQt5 教程

这个例子展示了如何使用QComboBox部件。

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

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QComboBox

class Example(QWidget):

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

  self.initUI()

 def initUI(self):

  self.lb1 = QLabel('黑客帝国', self)

  combo = QComboBox(self)
  combo.addItem('黑客帝国')
  combo.addItem('指环王')
  combo.addItem('复仇车联盟')
  combo.addItem('阿凡达')
  combo.addItem('X战警')

  combo.move(50, 50)
  self.lb1.move(50, 150)

  combo.activated[str].connect(self.onActivated)

  self.setGeometry(300, 300, 300, 200)
  self.setWindowTitle('组合框')  
  self.show()

 def onActivated(self, text):
  self.lb1.setText(text)
  self.lb1.adjustSize()

if __name__ == '__main__':

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

组合框中有五个选项。标签控件用来显示从组合框中所选的选项。

combo = QComboBox(self)
combo.addItem('黑客帝国')
combo.addItem('指环王')
combo.addItem('复仇车联盟')
combo.addItem('阿凡达')
combo.addItem('X战警')

我们创建包含五个选项的QComboBox部件。

combo.activated[str].connect(self.onActivated)

在QComboBox中选中项目,我们调用onActivated()方法。

def onActivated(self, text):
 self.lb1.setText(text)
 self.lb1.adjustSize()

在onActivated()方法中,我们设置标签控件显示所选项目的文本。adjustSize()调整标签的大小。

程序执行后

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

相关文章

简单学习Python多进程Multiprocessing

简单学习Python多进程Multiprocessing

1.1 什么是 Multiprocessing 多线程在同一时间只能处理一个任务。 可把任务平均分配给每个核,而每个核具有自己的运算空间。 1.2 添加进程 Process 与线程类似,...

Python中协程用法代码详解

本文研究的主要是python中协程的相关问题,具体介绍如下。 Num01–>协程的定义 协程,又称微线程,纤程。英文名Coroutine。 首先我们得知道协程是啥?协程其实可以...

Python实现微信好友的数据分析

Python实现微信好友的数据分析

基于微信开放的个人号接口python库itchat,实现对微信好友的获取,并对省份、性别、微信签名做数据分析。 效果: 直接上代码,建三个空文本文件stopwords.txt,ne...

Python中 CSV格式清洗与转换的实例代码

题目: CSV格式清洗与转换 描述 附件是一个CSV格式文件,提取数据进行如下格式转换:‪‬‪‬‪‬‪...

用生成器来改写直接返回列表的函数方法

用生成器来改写直接返回列表的函数方法

本文是一篇关于《Effective Python》书中一节的学习笔记,记录了示例代码和思路。 如果函数要产生一系列结果,那么最简单的做法就是把这些结果都放在一个列表里返回。 比如我们要查...