第三十四章、PyQt中的输入部件:QComboBox组合框功能详解

一、概述

Designer中输入工具部件中的Combo Box组合框与其他可视化工具组合框功能相同,组合了按钮和弹出列表的功能,显示当前项并可以弹出可选择项的列表。组合框可以编辑,允许用户修改列表中的每个项。Combo Box组合框对应PyQt中的类QComboBox。

QComboBox组合框使用Model/View框架来弹出列表和存储项,默认情况下项存储在 QStandardItemModel类型的Model中,弹出列表是 QListView的子项,通过model() 和view()方法可以访问QComboBox的Model和View,当然也可以通过setModel() 和setView()来改变这种默认设置。

PyQt中的组合框可以包含字符串和pixmap的项, 这些项的数据访问可以使用Qt.DisplayRole 和 Qt.DecorationRole来访问,当用户在可编辑组合框中输入一个新字符串时,可以使用QValidator将输入数据进行约束(例如限制只能是某个范围的数字输入等)。字符串输入后,组合框可以将其插入项列表中,也可以不插入,也可以在多个位置插入。默认策略是在底部插入,但可以使用setInsertPolicy()方法更改此策略。

posted @ 2020-04-09 23:37  老猿学Python  阅读(380)  评论(0编辑  收藏  举报