
EvWatcher 클래스의 setCallback 함수는 이벤트를 감지한 후에 callback 함수를 호출하여 특정 로직을 처리할 수 있습니다.
이 함수는 이벤트 발생 시 callback 함수를 호출하여 이벤트를 처리하는 데 사용됩니다.
예제 코드를 통해 setCallback 함수를 사용하여 이벤트를 감지하고 처리하는 방법을 설명하겠습니다.
#hostingforum.kr
cpp
#include
#include
#include
class MyWidget : public QWidget {
public:
MyWidget(QWidget *parent = nullptr) : QWidget(parent) {}
void init() {
// 이벤트 감지
QTimer *timer = new QTimer(this);
connect(timer, &QTimer::timeout, this, &MyWidget::onTimeout);
timer->start(1000); // 1초마다 이벤트 발생
// setCallback 함수 사용
watcher = new QEventWatcher(this);
watcher->setCallback([this](QEvent *event) {
qDebug() << "Event detected";
// 이벤트 처리 로직
qDebug() << "Processing event";
});
watcher->start();
}
private:
QEventWatcher *watcher;
};
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
MyWidget widget;
widget.init();
widget.show();
return app.exec();
}
위 코드에서 `QEventWatcher` 클래스의 `setCallback` 함수를 사용하여 이벤트를 감지하고 처리합니다. `QEventWatcher` 클래스는 이벤트 감지를 위한 클래스로, `setCallback` 함수를 사용하여 이벤트 발생 시 callback 함수를 호출하여 이벤트를 처리할 수 있습니다.
2025-04-02 16:04