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时间戳与时间字符串互相转换实例代码

复制代码 代码如下:#设a为字符串import timea = "2011-09-28 10:00:00" #中间过程,一般都需要将字符串转化为时间数组time.strptime(a,'...

使用python实现BLAST

使用python实现BLAST

最近在自学python,又用python实现了一下BLAST。 这次更新了打分函数如下,空位罚分改为-5,但不区分gap open 和 gap extend。 ''''' @au...

Python连接PostgreSQL数据库的方法

前言 其实在Python中可以用来连接PostgreSQL的模块很多,这里比较推荐psycopg2。psycopg2安装起来非常的简单(pip install psycopg2),这里主...

Python中统计函数运行耗时的方法

本文实例讲述了Python中统计函数运行耗时的方法。分享给大家供大家参考。具体实现方法如下: import time def time_me(fn): def _wrapper(...

pytorch 实现在预训练模型的 input上增减通道

如何把imagenet预训练的模型,输入层的通道数随心所欲的修改,从而来适应自己的任务 #增加一个通道 w = layers[0].weight layers[0] = nn.Con...