public functions:
void | addItem(const QString &text, const QVariant &userData = QVariant()) 添加一个项目 |
void | addItem(const QIcon &icon, const QString &text, const QVariant &userData = QVariant()) |
void | addItems(const QStringList &texts) 根据QStringList.size的大小来增加对应数目的项目,然后为每个item设置内容 |
QCompleter * | completer() const |
int | count() const 返回item数目 |
QVariant | currentData(int role = Qt::UserRole) const |
int | currentIndex() const 返回当前索引 |
QString | currentText() const 返回当前索引内容 |
bool | duplicatesEnabled() const |
int | findData(const QVariant &data, int role = Qt::UserRole, Qt::MatchFlags flags = static_cast<Qt::MatchFlags>(Qt::MatchExactly|Qt::MatchCaseSensitive)) const |
int | findText(const QString &text, Qt::MatchFlags flags = Qt::MatchExactly|Qt::MatchCaseSensitive) const 查找指定的内容,没找到返回-1 |
bool | hasFrame() const |
virtual void | hidePopup() |
QSize | iconSize() const |
void | insertItem(int index, const QString &text, const QVariant &userData = QVariant()) 在指定位置插入项目 |
void | insertItem(int index, const QIcon &icon, const QString &text, const QVariant &userData = QVariant()) |
void | insertItems(int index, const QStringList &list) |
QComboBox::InsertPolicy | insertPolicy() const |
void | insertSeparator(int index) |
bool | isEditable() const |
QVariant | itemData(int index, int role = Qt::UserRole) const |
QAbstractItemDelegate * | itemDelegate() const |
QIcon | itemIcon(int index) const |
QString | itemText(int index) const |
QLineEdit * | lineEdit() const |
int | maxCount() const |
int | maxVisibleItems() const |
int | minimumContentsLength() const |
QAbstractItemModel * | model() const |
int | modelColumn() const |
QString | placeholderText() const |
void | removeItem(int index) |
QModelIndex | rootModelIndex() const |
void | setCompleter(QCompleter *completer) |
void | setDuplicatesEnabled(bool enable) |
void | setEditable(bool editable) |
void | setFrame(bool) |
void | setIconSize(const QSize &size) 设置图标大小 |
void | setInsertPolicy(QComboBox::InsertPolicy policy) |
void | setItemData(int index, const QVariant &value, int role = Qt::UserRole) |
void | setItemDelegate(QAbstractItemDelegate *delegate) |
void | setItemIcon(int index, const QIcon &icon) |
void | setItemText(int index, const QString &text) |
void | setLineEdit(QLineEdit *edit) |
void | setMaxCount(int max) 设置最大的项目数量 |
void | setMaxVisibleItems(int maxItems) 设置可视范围内能显示的最大项目数量 |
void | setMinimumContentsLength(int characters) |
void | setModel(QAbstractItemModel *model) |
void | setModelColumn(int visibleColumn) |
void | setPlaceholderText(const QString &placeholderText) |
void | setRootModelIndex(const QModelIndex &index) |
void | setSizeAdjustPolicy(QComboBox::SizeAdjustPolicy policy) |
void | setValidator(const QValidator *validator) |
void | setView(QAbstractItemView *itemView) |
virtual void | showPopup() |
QComboBox::SizeAdjustPolicy | sizeAdjustPolicy() const |
const QValidator * | validator() const |
QAbstractItemView * | view() const 修改滚动条等控件 |
其中比较常用的成员函数加上了红色。
其中遇到并解决的问题如下:
1.增加item中滚动条的宽度
QAbstractScrollArea *scrollArea = comboBox->view();
QScrollBar *scrollBar = scrollArea->verticalScrollBar();
scrollBar->setStyleSheet("width: 50px;"); //宽度自己可调整