• 16788阅读
  • 3回复

急急急!QTableWidget insertRow的问题 [复制链接]

上一主题 下一主题
离线ablo0507
 

只看楼主 倒序阅读 楼主  发表于: 2014-01-21
问题:insertRow后给新增行各个单元格赋值时程序崩溃退出
代码如下:
/**
* 添加员工信息
* @brief AgencyManage::addAgency
*/
void AgencyManage::addAgency(){
    AgencyManageSql agencySql;
    QString recAccName = "";
    QString recAccNo = "";
    QString amount = "";
    QString rem = "";
    int row = ui->tableWidgetEmp->rowCount();//行数
    int column = ui->tableWidgetEmp->columnCount();//列数
    ui->tableWidgetEmp->insertRow(row);//插入新行
    //插入数据
    agencySql.addAgencyInf(recAccName,recAccNo,amount,rem);
    //获取序号(数据库中自增字段)
    QString seqNo=agencySql.getSeqNo();
//定义各列组件
    QTableWidgetItem *item1 = new QTableWidgetItem(seqNo);
    item1->setTextAlignment(Qt::AlignCenter);//居中
    QTableWidgetItem *item2 = new QTableWidgetItem(recAccName);
    item2->setTextAlignment(Qt::AlignCenter);//居中
    QTableWidgetItem *item3 = new QTableWidgetItem(recAccNo);
    item3->setTextAlignment(Qt::AlignCenter);//居中
    QTableWidgetItem *item4 = new QTableWidgetItem(amount);
    item4->setTextAlignment(Qt::AlignCenter);//居中
    QTableWidgetItem *item5 = new QTableWidgetItem(rem);
    item5->setTextAlignment(Qt::AlignCenter);//居中
//最后一列添加删除按钮(扩展按钮)
    QPushButtonEX *delBut = new QPushButtonEX();
    delBut->setText(tr("删除"));
    delBut->setFixedSize(12,20);
    delBut->setMe(QString::number(row));//给按钮绑定行号
    //删除员工信息
    connect(delBut,SIGNAL(onClickMe(QString)),this,SLOT(delAgency(QString)));

    QTableWidgetItem *checBox = new QTableWidgetItem();
    checBox->setCheckState(Qt::Checked);

    ui->tableWidgetEmp->setItem(row,0,checBox);
    ui->tableWidgetEmp->setItem(row,1,item1);
    ui->tableWidgetEmp->setItem(row,2,item2);
    ui->tableWidgetEmp->setItem(row,3,item3);
    ui->tableWidgetEmp->setItem(row,4,item4);
    ui->tableWidgetEmp->setItem(row,5,item5);
    ui->tableWidgetEmp->setCellWidget(row,6,delBut);
}
求高手帮忙看看!谢谢!
离线XChinux

只看该作者 1楼 发表于: 2014-01-22
是在哪里越界了吧?
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线realfan

只看该作者 2楼 发表于: 2014-01-22
加上断点,一步步往下走,看哪步出错。
离线tool_in_kit

只看该作者 3楼 发表于: 2014-05-09
要先insertRow, 然后setRow.
快速回复
限100 字节
 
上一个 下一个