Qt4.7.0文档翻译:QComboBox类参考,QComboBox Class Reference
QComboBox部件是一个按钮和弹出列表的组合体。
一个QComboBox提供一种 以占用最少的屏幕空间的方式 将一个选择列表展示给用户的 方法 。
一个组合 框是一个显示当前条目的选择部件 ,并且能弹出一个由选择条目组成的列表 。一个组合 框可以是可编辑的,允许用户 修改列表中的每个条目。
组合 框不仅能包含字符串 ,还能包含位图; insertItem ()和 setItemText ()函数 都以合适的方式重载了。对于可编辑的组合 框,提供了 clearEditText ()函数,以在不改变组合 框的内容的情况下清除显示的字符串。
如果一个组合 框的当前条目发生变化 ,会发射两个信号 : currentIndexChanged ()和 activated () 。无论变化是由于程序代码还是用户动作引起的 , currentIndexChanged () 都会被发射,然而 activated ()只在变化是由用户动作引起的时候才会 被发射。当用户在组合 框的弹出列表中高亮选中一个条目时, highlighted ()信号 被发射。这三个信号 都有两个版本,一个是带有一个 QString 参数的 ,另一个是带有一个 int 参数的。如果用户选中或者高亮一个位图 ,那么只有 int 信号会 被发射。每当一个可编辑的组合 框的文本内容被改变时, editTextChanged ()信号就被发射。
当用户在一个可编辑的组合 框中输入一个新的字符串时,这个部件可能会也可能不会将它插入到其中 ,而且它可能将它插入到多种位置 。默认的策略是 AtBottom ,但是你可以使用 setInsertPolicy ()来改变这个。
可以使用 QValidator 来限制一个可编辑的组合 框中的输入;参见 setValidator () 。默认情况下 ,任何输入 都会被接受。
一个组合 框可以使用插入函数来填充,例如 insertItem ()和 insertItems () 。可以使用 setItemText ()来改变条目 。可以使用 removeItem ()来删除一个条目 ,可以使用 clear ()来删除所有条目 。 currentText ()返回当前条目的文字 , text ()返回指定编号的条目的文字 。可以使用 setCurrentIndex ()来设置当前条目 。 count ()返回组合 框中的条目的个数;可以使用 setMaxCount ()来设置最大的条目个数 。你可以使用 setEditable ()来允许编辑 。对于可编辑的组合 框,你可以使用 setCompleter ()来设置自动补全 ,还可以使用 setDuplicatesEnabled ()来设置用户是否可以添加重复的条目 。
QComboBox使用 模型 /视图框架 来处理它的弹出列表以及存储它的条目 。默认情况下 ,一个 QStandardItemModel 存储它的条目 ,而一个 QListView 子类显示弹出的列表 。你可以直接访问它的模型和视图 (使用 model ()和 view ()),但是 QComboBox也提供函数用来设置和获取条目数据 (例如 setItemData ()和 itemText ())。 你还可以设置一个新的模型和视图(使用 setModel ()和 setView ())。对于组合框的标签中的文字和图标,使用了模型中拥有 Qt::DisplayRole 和 Qt::DecorationRole 角色的数据 。
参见 QLineEdit , QSpinBox , QRadioButton , QButtonGroup ,和 图形界面设置手册 :组合框,下拉列表框 。
Your opinionsHxLauncher: Launch Android applications by voice commands