Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 21.02.2016
Сообщений: 10
1

Сигналы и Слоты

25.07.2016, 19:48. Показов 1310. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При вызове функции SendSignal(); образуется сигнал, который должен пораждать вызову слота и на экра должно написаться сообщение "Work signal...". Казалось-бы вроде все просто но ведать не так тривеально. Спасибо за любую помощь.

Oшибки:
Bash
1
2
3
4
\build-untitled-Qt_4_8_5_MinGW-Debug\debug\main.o:-1: In function `MyClass':
\untitled\main.cpp:15: ошибка: undefined reference to `vtable for MyClass'
\untitled\main.cpp:20: ошибка: undefined reference to `MyClass::signal()'
:-1: ошибка: collect2: ld returned 1 exit status
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <QObject>
#include <iostream>
 
using namespace std;
 
class MyClass : public QObject
{
 
   Q_OBJECT
 
public:
    MyClass()
    {}
    MyClass(int s)
    {
        x = s;
    }
    void SendSignal()
    {
        emit signal();
    }
 
    inline int Get() const{return x;}
    inline void Set(int x){this->x = x;}
 
private:
    int x;
 
 
signals:
    void signal();
public slots:
      void actionSignal()
      {
          cout << "Work signal..." << endl;
      }
};
 
 
int main()
{
    MyClass *a = new MyClass(3);
    a->Set(34);
 
    MyClass *b = new MyClass(3);
    b->Set(34);
 
 
    QObject::connect(a,SIGNAL(signal()),b,SLOT(actionSignal()),Qt::AutoConnection);
 
    a->SendSignal();
 
 
 
    return 0;
}
 Комментарий модератора 
Код С++/Qt обрамляется тегом CPPQT. Выхлоп консоли обрамляется тегом BASH.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.07.2016, 19:48
Ответы с готовыми решениями:

Сигналы и слоты
Заезженная тема, со стороны простая, не думал, что найду тут проблемы, но! Есть основной класс...

Сигналы и слоты
Пытаюсь законектить сигнал со слотом. Есть класс: server.h class server { public: ...

Сигналы и слоты
Смысл следующий: Вводим число в spinBox, это число, с помощью сигнала, передаётся слоту объекта...

Сигналы и слоты
Доброго времени суток. Застрял на следующей задаче: Есть два объекта start_menu(класса...

3
Pied Piper
237 / 228 / 57
Регистрация: 15.01.2013
Сообщений: 855
25.07.2016, 19:51 2
Лучший ответ Сообщение было отмечено Lex-KNDR как решение

Решение

Перенесите класс в h файл.
1
0 / 0 / 0
Регистрация: 21.02.2016
Сообщений: 10
25.07.2016, 20:17  [ТС] 3
Перенес заработало, только в чем дело то и так же должно работать. Тему можно закрывать.
0
Pied Piper
237 / 228 / 57
Регистрация: 15.01.2013
Сообщений: 855
26.07.2016, 00:02 4
Lex-KNDR, moc файлы генерируются из заголовочных файлов, поэтому и не работало
0
26.07.2016, 00:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.07.2016, 00:02
Помогаю со студенческими работами здесь

Слоты и сигналы в QT
пишу код используя статью собственно, код класса Downloader получился один в один такой же, в...

Сигналы\слоты
что можно сделать со сл. кодом ...

Сигналы и слоты
Есть 2 виджета: поле ввода и кнопка. Хочу на этом примере опробовал сигнально-слотовое соединение....

Сигналы и слоты
Столкнулся с типичной для многих новичков в Qt проблемой, связанное с сигналами и слотами. Есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru