Witam, śledzę poradnik dotyczący Qt i mam pewien problem, otóż mam taki projekt:
jedynie co było zmieniane to fragment w mainwindow.h i w mainwindow.cpp
.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
void otworz_plik(); // otwieranie pliku
void zapisz_plik(); // zapisywanie pliku
private:
Ui::MainWindow *ui;
private slots:
void on_przycisk_clicked();
void on_actionOtw_rz_triggered();
void on_actionZapisz_triggered();
void on_actionZapisz_jako_triggered();
void on_actionZamknij_triggered();
};
#endif // MAINWINDOW_H
.cpp
#include <QFileDialog>
#include "mainwindow.h"
#include "ui_mainwindow.h"
QString tekst;
QString szukany_tekst;
QString zamiennik;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::otworz_plik()
{
QString fileName = QFileDialog::getOpenFileName(this,tr("Otwórz..."), "/home/", tr("Pliki txt (*.txt)"));
}
Jeśli to jest ważne, to okno budowy wygląda tak:
a błędy to:
build-Zamiennik-Desktop_Qt_5_6_1_MinGW_32bit-Debug\debug\moc_mainwindow.cpp:85: błąd: undefined reference to `MainWindow::on_przycisk_clicked()'
build-Zamiennik-Desktop_Qt_5_6_1_MinGW_32bit-Debug\debug\moc_mainwindow.cpp:86: błąd: undefined reference to `MainWindow::on_actionOtw_rz_triggered()'
\build-Zamiennik-Desktop_Qt_5_6_1_MinGW_32bit-Debug\debug\moc_mainwindow.cpp:87: błąd: undefined reference to `MainWindow::on_actionZapisz_triggered()'
build-Zamiennik-Desktop_Qt_5_6_1_MinGW_32bit-Debug\debug\moc_mainwindow.cpp:88: błąd: undefined reference to `MainWindow::on_actionZapisz_jako_triggered()'
build-Zamiennik-Desktop_Qt_5_6_1_MinGW_32bit-Debug\debug\moc_mainwindow.cpp:89: błąd: undefined reference to `MainWindow::on_actionZamknij_triggered()'
i jeszcze jeden:
collect2.exe:-1: błąd: error: ld returned 1 exit status (i pod tym: brak pliku collect2.exe)
a i błędy wyrzuca w pliku, którego nie widać w projekcie, otwiera się przy błędach:
void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
MainWindow *_t = static_cast<MainWindow *>(_o);
Q_UNUSED(_t)
switch (_id) {
case 0: _t->on_przycisk_clicked(); break;
case 1: _t->on_actionOtw_rz_triggered(); break;
case 2: _t->on_actionZapisz_triggered(); break;
case 3: _t->on_actionZapisz_jako_triggered(); break;
case 4: _t->on_actionZamknij_triggered(); break;
default: ;
}
}
Q_UNUSED(_a);
}
z czego błędy sa przy case'ach