Qt Creator和Qstring

时间:2013-10-14 23:53:53

标签: c++ qt

我是编程和使用qt创建自己的GUI的新手。我正在尝试将搜索栏设置为我的列表视图之一,但它一直在说没有匹配的函数可以调用......这可能是一个非常愚蠢的问题。这是我的代码。

void Widget::on_SearchBar_textChanged(const QString &arg1)
{

    QString Input;
    ui->Online->find(Input);
}

和错误

  

C:\ Qt \ Qt5.1.1 \ Tools \ QtCreator \ bin \ CryptoCourier \ widget.cpp:21:错误:没有匹配函数来调用'QListWidget :: find(QString&)'

ui->Online->find(Input);

这是我要求的其余代码

好的,这是我的其余代码。不过多了,不过这里。

#include "widget.h"
#include "ui_CryptoCC.h"
#include <QString>

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

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

void Widget::on_SearchBar_textChanged(const QString &arg1)
{
   #include <string>
    QString Input;
    ui->Online->find(Input);
}
                       ^

1 个答案:

答案 0 :(得分:3)

您有两个主要问题:

  • #include语句应该超出函数范围,因为它们确实包含整个文件的确切位置。
  • 对于QString,您要包含的文件可能称为“QString”。

尝试这样的事情:

#include <QString>

/* the rest of your code, which you didn't include in your example */

void Widget::on_SearchBar_textChanged(const QString &arg1)
{
    /* by the way, you're calling Online->find() with an empty string,
     * did you mean to use `arg1` here? */
    QString Input;
    ui->Online->find(Input);
}

除此之外,我需要先知道uiui->Online是什么,然后我才能就你可以调用它们的函数给出建议。