好好工作然后回农村 2022-06-07 11:20 采纳率: 100%
浏览 20
已结题

QT Thread 读取文本出错


#include "thread.h"
#include "ui_thread.h"
#include <QThread>
#include <QFile>
#include <QTextStream>
#include <QDebug>
Thread::Thread(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Thread)
{
    ui->setupUi(this);

    connect(ui->pushButton, &QPushButton::clicked, this, &Thread::save);
    connect(ui->pushButton_2, &QPushButton::clicked, this, &Thread::set);


}

Thread::~Thread()
{
    delete ui;
}

void Thread::save()
{
    qDebug() << "MAIN THREAD ID:" << QThread::currentThreadId();
    auto *thread = QThread::create([this](){
    QFile file("./setting.txt");
    file.open(QIODevice::WriteOnly);
    QTextStream stream(&file);
    QString str =(ui->textEdit->toPlainText());
    stream<<str;
    qDebug() << "THREAD ID:" << QThread::currentThreadId();
    });
    thread->start();
}

void Thread::set()
{

    qDebug() << "MAIN THREAD ID:" << QThread::currentThreadId();

    QThread::create([](Thread*thread){
       QFile file("./setting.txt");
       file.open(QIODevice::ReadOnly);
       thread->ui->textEdit->setPlainText(file.readAll());
    },this)->start();


}

set函数读取文本时报错:no matching function for call to 'create'   

  • 写回答

1条回答 默认 最新

  • 赵4老师 2022-06-07 16:16
    关注

    需要C++11支持

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月3日
  • 已采纳回答 9月25日
  • 创建了问题 6月7日