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设计】。

相关文章

基于Django与ajax之间的json传输方法

前端使用ajax进行数据交互时: $.ajax({ cache: false, type: "POST", url: {% url ''%} data: $('#form')...

Python 脚本实现淘宝准点秒杀功能

Python 脚本实现淘宝准点秒杀功能

准备软件 下载地址 : https://download.csdn.net/download/tangcv/11968538 pycharm文件太大,不好上传 ,直接去官网下载:ht...

跟老齐学Python之大话题小函数(2)

跟老齐学Python之大话题小函数(2)

上一讲和本讲的标题是“大话题小函数”,所谓大话题,就是这些函数如果溯源,都会找到听起来更高大上的东西。这种思维方式绝对我坚定地继承了中华民族的优良传统的。自从天朝的臣民看到英国人开始踢足...

Pytorch 多维数组运算过程的索引处理方式

背景:对 python 不熟悉,能看懂代码,也能实现一些简单的功能,但是对 python 的核心思想和编程技巧不熟,所以使 Pytorch 写 loss 的时候遇到很多麻烦,尤其是在 b...

Ubuntu下使用python读取doc和docx文档的内容方法

读取docx文档 使用的包是python-docx 1. 安装python-docx包 sudo pip install python-docx 2. 使用python-docx...