我做的是一个qt界面车辆信息管理系统,但是点击 浏览所有 键位 却没有反应,运行过程中也没有报错,如何解决?

如图所示,我做的是一个qt界面车辆信息管理系统,程序已经大致编写好,但是点击 浏览所有 键位 却没有反应,运行过程中也没有报错,想知道是哪里出了问题。

img

img

img

img

img

img

img

img

问题原因是槽函数没有收到按钮点击事件,至于什么原因导致的没有发现,你的问题解决方法如下:
在Mainwindow的构造函数中,手动绑定按钮的点击事件。运行结果如下:

img

Mainwindow构造函数:


MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    ui->setupUi(this);
    //显示登录界面
    l.show();
    //关联Login类对象l中的信号函数loginSuccess和本类对象中的槽函数dealLogin
    connect(&l,&Login::loginSuccess, this, &MainWindow::dealLogin);
    //设置主界面的窗口标题为"车辆信息管理系统"
    setWindowTitle("车辆信息管理系统");
    //为变量model赋值
    model=new QStandardItemModel;
    //设置主界面中的tableView控件对象绑定的数据为变量model
    ui->tableView->setModel(model);
    //设置多行文本框的提示性字符串,用于提示用户添加车次时的正确格式要求
    ui->textEdit->setPlaceholderText("宝马7系,宝马,大型车,5座,3.0T,手自一体,黑色,91.90万");
    //调用初始化tableView表格数据的函数
    initTable();

  //添加这一行代码 !!!!!
    connect(ui->pushButton_2,&QPushButton::clicked,this,&MainWindow::on_pushButton_2_clicked);

}

另外,你的点击函数for循环里setItem的第一个参数也需要修改一下,改成 i-1,如下:

void MainWindow::on_pushButton_2_clicked()
{
    //调用initTable函数初始化tableView表格
    initTable();
    //循环取出fiileData每个元素的值
    for (int i=1;i<fileData.count();++i) {
        //逗号作为分隔符,取出各字段的值
        QStringList strLine = fileData.at(i).split(",");
        //依次往表格中填充信息
        model->setItem(i-1, 0, new QStandardItem(strLine.at(0)));  
        model->setItem(i-1, 1, new QStandardItem(strLine.at(1)));
        model->setItem(i-1, 2, new QStandardItem(strLine.at(2)));
        model->setItem(i-1, 3, new QStandardItem(strLine.at(3)));
        model->setItem(i-1, 4, new QStandardItem(strLine.at(4)));
        model->setItem(i-1, 5, new QStandardItem(strLine.at(5)));
        model->setItem(i-1, 6, new QStandardItem(strLine.at(6)));
        model->setItem(i-1, 7, new QStandardItem(strLine.at(7)));
    }
}

你得系统日志复制出来发给我看一下

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632