• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Qt kod z poradnika - błędy

0 głosów
577 wizyt
pytanie zadane 30 lipca 2016 w C i C++ przez niezalogowany
zamknięte 30 lipca 2016

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

komentarz zamknięcia: rozwiązane - był błąd w poradniku

1 odpowiedź

0 głosów
odpowiedź 30 lipca 2016 przez niezalogowany
Proponuję rzucić okiem na "qt signal Error: undefined reference to..." w Google, np https://stackoverflow.com/questions/13409343/qt-signal-undefined-reference-error
komentarz 30 lipca 2016 przez niezalogowany
mam makro QOjbject na początku deklaracji klasy i pomimo tego ten błąd występuje
komentarz 30 lipca 2016 przez niezalogowany
być może błąd jest w poradniku bądź dotyczy jakiegoś braku kompatybilności, jednak Twój kod z Githuba także nie działa
komentarz 30 lipca 2016 przez niezalogowany
Niewykluczone, że coś się zmieniło od tamtego czasu, ale na wersji na której pracowałem to kod działał

Podobne pytania

+1 głos
0 odpowiedzi 194 wizyt
0 głosów
1 odpowiedź 306 wizyt
pytanie zadane 20 września 2021 w C i C++ przez tonn204 Mądrala (7,470 p.)
0 głosów
1 odpowiedź 484 wizyt
pytanie zadane 26 czerwca 2021 w C i C++ przez Alkaratus Nowicjusz (160 p.)

93,607 zapytań

142,530 odpowiedzi

322,999 komentarzy

63,098 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...