Задача с вероятно очень глупой ошибкой перенесенная на тестовый проект:
сделать так что бы кнопка на форме (MainWindow
) вызвала метод
класса (nnn
) void buttonEdit
который в свою очередь при помощи emit вызывает сигнал addPush
. Его принимает в MainWindow
слот PUSH
и делает все то что спланировано. Проблема в том что при создании слота:
connect(n, &nnn::addPush, this, &MainWindow::PUSH);
выдает следующее:
и да, если еще коннектить старым способом (с Qt4), то выдает следующее:
Код MainWindow.h:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "nnn.h"
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
void setButtonTextFor2Form(QString S);
private slots:
void on_pushButton_2_clicked();
public slots:
void PUSH();
private:
Ui::MainWindow *ui;
nnn* n;
};
#endif // MAINWINDOW_H
MainWindow.cpp:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "form.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
nnn *n = new nnn();
connect(n, &nnn::addPush, this, &MainWindow::PUSH);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_2_clicked()
{
n->buttonEdit();
}
void MainWindow::PUSH()
{
ui->pushButton->setText("эта кнопка должна быть нажата");
}
nnn.h:
#ifndef NNN_H
#define NNN_H
#include <QObject>
class nnn: QObject
{
Q_OBJECT
public:
nnn();
void buttonEdit();
signals:
void addPush();
};
#endif // NNN_H
nnn.cpp:
#include "nnn.h"
nnn::nnn()
{
}
void nnn::buttonEdit()
{
emit addPush();
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Откопал код шифра Цезаря на C++ Собственно, вот он:
Решил проверить код из книги ООП в С++ Лафоре но в Visual Studio не получается его повторить
Написал простой векторный редактор и сохранение изображения идет в текстовый документКак сделать чтобы при нажатии на соответствующую...
Есть два приложения, App1 и App2App2 - стартует из первого по средствам _com_ptr_t m_pApp2