qq_35434603
2021-07-02 22:49
采纳率: 100%
浏览 45

QT定义槽函数获取QTableview的数据出现闪退

void market::tableclick()
{
int row =ui->tableView->currentIndex().row();
qDebug()<<row;
QModelIndex index1= model->index(row,0);
QString id =model->data(index1).toString();
ui->lineEdit->setText(id);
}

img

在做一个电子商城系统,C++语言,用的数据库是sql server,在定义槽函数之前都可以正常运行,定义槽函数以后,程序一关联到这个事件信号就闪退,求解,急急急急急!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • qfl_sdu 2021-07-02 23:21
    已采纳

    修改如下:

    int row =ui->tableView->currentIndex().row();
    if(row <0) return;
    QAbstractItemModel *model = ui->tableView->model();  
    QModelIndex index1= model->index(row,0);
    QString id =model->data(index1).toString();
    ui->lineEdit->setText(id);
    
    点赞 打赏 评论
  • CSDN专家-link 2021-07-02 22:56

    你最好对这些指针进行好好的有效性判断,确定ui,tableView,model,lineEdit都不为空,你这么调用太危险

    点赞 打赏 评论

相关推荐 更多相似问题