QT中的QComboBox下拉框控件

1.一次选中ui设置界面的所有下拉框。

QList <QComboBox *> barComboboxlist=this->findChildren<QComboBox *>();

2.给下拉框设置背景和字体样式。

// 访问链表中的 QComboBox 控件
        foreach (QComboBox* comboBox, barComboboxlist) {
            // 进行操作,比如设置选项、获取当前选项等
           comboBox->setStyleSheet("QComboBox { background-color: black; color: white; }");

}

3.设置文本框文字居中对齐。

(1)ui界面设置

padding-left: 58px;//下拉框总长度一半
padding-right: 58px;
text-align: center;

(2)代码实现。

        foreach (QComboBox* comboBox, barComboboxlist) {
            // 进行操作,比如设置选项、获取当前选项等
//           comboBox->setStyleSheet("QComboBox { background-color: black; color: white; }");
            // 设置下拉框文本的对齐方式为居中
//               comboBox->setItemData(0, Qt::AlignCenter, Qt::TextAlignmentRole);
               // 设置下拉框文本居中
                comboBox->setEditable(true);//设置QComBobox状态为可编辑
                  comboBox->lineEdit()->setAlignment(Qt::AlignCenter);//设置LineEdit文字居中
                  comboBox->lineEdit()->setReadOnly(true);//设置lineEdit为只读
                 static_cast<QStandardItemModel*>(ui->comboBox->model())->item(pos)->setTextAlignment(Qt::AlignCenter);//设置QComBobox的下拉框中的标签文字居中
           
        }

4.使用QTableWidget创建矩阵,给对应列写入下拉框。

//循环设置的九行矩阵,这个第一行不写入下拉框

 for(int i=1; i<9; i++){
        QComboBox *comboBox = new QComboBox();
        comboBox->addItem("Element1");
        comboBox->addItem("Element2");
        comboBox->addItem("Element3");
        comboBox->addItem("Element4");
        comboBox->addItem("Element5");
        comboBox->addItem("Element6");
        comboBox->addItem("Element7");

        comboBox->setStyleSheet("QComboBox { background-color: black; color: white; }");
        ui->tableWidget->setCellWidget(i, 2, comboBox);//将创建的下拉框下入第三列矩阵中

    }

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值