@Pr0max

C++ qt, как исправить no declaration matches '...'?

В общем, пишу приложуху/учу qt, и тут не с того не с сего ошибка no declaration matches 'void MainWindow::on_Dds_button_clicked()', пытался найти решение, не получилось. Вот код:
main.cpp
#include "mainwindow.h"
#include <iostream>
#include <QLabel>
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    return a.exec();
}

mainwindow.cpp
#include "mainwindow.h"
#include <iostream>
#include "./ui_mainwindow.h"
#include <QFileDialog>
using namespace std;

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

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


void MainWindow::on_Dds_button_clicked()
{
    QString downloadsPath = QFileDialog::getExistingDirectory(0, "Выбор папки", "C:\\");
    ui->tlabel->setText(downloadsPath);
}


void MainWindow::on_Ds_button_clicked()
{
    QString tfileDirPath = QFileDialog::getExistingDirectory(0, "Выбор папки", "C:\\");
}
  • Вопрос задан
  • 738 просмотров
Пригласить эксперта
Ответы на вопрос 1
@dima20155
you don't choose c++. It chooses you
Ошибка означает, что в заголовочном файле у вас нет объявления метода void on_Dds_button_clicked() класса MainWindow.
Наверное, у вас есть объявление только void on_Ds_button_clicked().
Вот похожий вопрос на stackoverflow.

P.S. Не испытывайте судьбу - не пиши длинные названия функций, которые отличаются только 1 буквой.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы