通过代码调试就明白所有
widget.h
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QCloseEvent>
#include <QTimer>
class Send : public QObject
{
Q_OBJECT
public:
Send(QObject *parent = nullptr);
~Send();
public slots:
void SendSlot(void) const;
};
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = Q_NULLPTR);
~Widget();
signals:
void WidgetSignal(void);
private:
Send send;
QTimer timer;
void closeEvent(QCloseEvent *event);
void paintEvent(QPaintEvent *event);
};
#endif // WIDGET_H
widget.cpp
#include "widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
qDebug() << "4";
timer.start(500);
connect(&timer, SIGNAL(timeout()), &send, SLOT(SendSlot()));
}
Widget::~Widget()
{
qDebug() << "2";
}
voi