Qt|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|Qt使用QSqlTableModel界面显示用法(三、删除功能)】~~~
继续下一节:修改功能
推荐阅读
- 由浅入深理解AOP
- 【译】20个更有效地使用谷歌搜索的技巧
- mybatisplus如何在xml的连表查询中使用queryWrapper
- MybatisPlus|MybatisPlus LambdaQueryWrapper使用int默认值的坑及解决
- MybatisPlus使用queryWrapper如何实现复杂查询
- iOS中的Block
- Linux下面如何查看tomcat已经使用多少线程
- 使用composer自动加载类文件
- android|android studio中ndk的使用
- 使用协程爬取网页,计算网页数据大小