'class QPlainTextEdit'没有名为'text'的成员

时间:2013-03-08 05:02:29

标签: c++ qt

C:\ Projects \ QTProjects \ SampleProject \ mainsample.cpp:18:错误:'class QPlainTextEdit'没有名为'text'的成员

#include "mainsample.h"
#include "ui_mainsample.h"

MainSample::MainSample(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainSample)
{
    ui->setupUi(this);
}

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

void MainSample::on_pushButton_clicked()
{
    ui->TxtAns->text(TxtFnum->text().toInt() + ui->TxtSnum->text().toInt());
}

什么似乎是问题?

2 个答案:

答案 0 :(得分:1)

显示错误,因为以下部分

ui->TxtAns->text(...)
TxtFnum->text()
ui->TxtSnum->text()

每次尝试调用一个名为text()的方法,该方法对于您正在使用的类QPlainTextEdit不存在。

另一件事是:即使有text()方法,它也只能用于读取文本,但不能用于分配新文件

假设所有三个对象都是QPlainTextEdit s:

ui->TxtAns->setPlainText(              // this method sets the text to TxtAns
    TxtFnum->toPlainText().toInt() +   // this reads the text from TxtFnum
    ui->TxtSnum->toPlainText().toInt() // this reads the text form TxtSnum
    );

答案 1 :(得分:0)

这几乎意味着:)

QPlainTextEdit类没有text()方法。它确实有toPlainText()方法。也许您打算使用QLineEdit方法?