Qt使用QSqlTableModel界面显示用法(三、删除功能)

删除功能,为了介绍方便,我将采用选中当前行进行删除操作

当然,考虑到误操作的可能性,我们在删除前会进行提示,提示我们选择使用QMessageBox
代码如下:

void MainWindow::on_pushButton_2_clicked()
{
    int row = ui->tableView->currentIndex().row();//记录当前选择行
    if(QMessageBox::Yes == QMessageBox::question(this,"Make Sure","确定删除第"+QString::number(row+1)+"行吗?",QMessageBox::Yes | QMessageBox::No , QMessageBox::Yes))
    {//提示框,防止误操作,是/否,按下是的操作后
        QSqlTableModel * model = new QSqlTableModel(this,db);//新建model
        model->setTable("EXAMPLE");//设置表
        if(model->select())//判断是否为空表
            model->removeRow(row);//删除当前行
        model->submitAll();//提交修改的数据
        ui->tableView->setModel(model);//设置模型
        model->select();//显示修改后的数据
    }
}

视觉上
Qt使用QSqlTableModel界面显示用法(三、删除功能)_第1张图片

~~~
继续下一节:修改功能

你可能感兴趣的:(Qt,自学之路)