C++ 将QComboBox大小设置为多个项目

C++ 将QComboBox大小设置为多个项目,c++,qt,combobox,C++,Qt,Combobox,我希望QComboBox的大小大于1。默认值为1。从“大小”我的意思是,它应该显示多个选项,一次没有鼠标点击组合框。我在上找不到任何函数。这段html代码可以理解我想要的行为。在html中是这样做的 <select size="3"> <option value="volvo">Volvo</option> <option value="saab">Saab</option> <option

我希望QComboBox的大小大于1。默认值为1。从“大小”我的意思是,它应该显示多个选项,一次没有鼠标点击组合框。我在上找不到任何函数。这段html代码可以理解我想要的行为。在html中是这样做的

 <select size="3">
      <option value="volvo">Volvo</option>
      <option value="saab">Saab</option>
      <option value="opel">Opel</option>
      <option value="audi">Audi</option>
    </select>

沃尔沃汽车
萨博
欧宝
奥迪
。看右边的结果


我应该怎么做才能在qt中实现这样的“从列表中选择”功能

你不能这么做
QComboBox
只是一个带有向下箭头按钮的
QLineEdit
弹出菜单(视图),该菜单按模型描述(
QStandarItemModel
等)

QLineEdit
不允许显示多行

您应该使用
QListWidget
执行简单任务,使用
QListView
执行较难的任务。这与你的例子非常相似

你可以从
@thuga的
评论中获得链接。文档包含所有必要的内容,例如
itemChanged(QListWidgetItem*item)
signal和其他示例


我认为使用
QComboBox
可以实现的最大效果就是每次都保持这个
comboBox
打开。使用
showPopup()
方法进行此操作。

但QListWidget或QListViews看起来像一个or。事实上,我在QComboBox中预期会这样,因为html中有标记。他们有这样的选择。我将尝试QComboBox和QLineEdit,看看哪一个适合我。