qt获取combox内容的知识点

combox如何获取数据:

1.currentIndex(); 获取当前comBox的索引,是int类型的值。
2.currentText(); 获取当前comBox的文本,是QString类型。
3.currentData(int role = Qt::UserRole)获取当前comBox绑定的数据,是QVariant类型。

具体使用方法:

      QWidget * widget=ui->tableWidget->cellWidget(j,0);//获得widget

    QComboBox *combox=(QComboBox*)widget;//强制转化为QComboBox
    double  kernelkind=combox->currentIndex();//获得索引数据
      int QString str=combox->currentText();//获取文本文档
自己编写的代码:用来获取combox和tablewidget中的内容
int  *Dialog1::on_pushButton_2_clicked()
{
int num;
     int j=5;
     double *a=new double[j];
     for(int j=0;j<2;j++)
     {QWidget * widget=ui->tableWidget->cellWidget(j,0);//获得widget
         QComboBox *combox=(QComboBox*)widget;//强制转化为QComboBox
         QString string=combox->currentText();//获得combox中的文本内容
        if(string==tr(""))//判断内容是否为空
        {
            { QMessageBox::warning(NULL, "warning", "Content",
                        QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
                 break;
             }
        }
     }
    for(int j=2;j<5;j++)
    {
        if(ui->tableWidget->item(j,0)==NULL||             //判断指向该cell的指针是否为空
     (ui->tableWidget->item(j,0)&&ui->tableWidget->item(j,0)->text()==tr("")))
       { QMessageBox::warning(NULL, "warning", "Content",
                   QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
            break;
        }
    }
    for(int j=0;j<2;j++)
    {
        QWidget * widget=ui->tableWidget->cellWidget(j,0);//获得widget
         QComboBox *combox=(QComboBox*)widget;//强制转化为QComboBox
        double  kernelkind=combox->currentIndex();
        a[j]=kernelkind;
        qDebug()<< a[j];
    }
    for(int j=2;j<5;j++)
    {
        QString s=ui->tableWidget->item(j,0)->text();//取出字符串
        double num = s.toDouble();//转成int
        a[j]=num;
        qDebug()<< a[j];
          //a[j]=s.toInt();
     }
       num++;
     //qDebug()<<j;
       //delete[]a;
       qDebug()<< a[4];
       int  t=one_against_one(a);
     return a;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值