Qt - How to intercept the application's close event (if there's one)
c++, events, qt, signals-slots
Solution
Your application is likely derived from `QApplication`. You could put your cleanup code in the destructor of your application:
class MyApp: public QApplication {
public:
~MyApp() {
// cleanup code here
}
};
Or, in your `main()`, you probably have something like this:
int main(int argc, char *argv[]) {
MyApp a(argc, argv);
return a.exec();
}
You can do work after calling `exec()`:
int main(int argc, char *argv[]) {
MyApp a(argc, argv);
int r = a.exec();
// cleanup code here
return r;
}
Problem
I need to do some work right before my application closes (note that I said my application and not it's main window). Is there an application close event or any other way to accomplish this? The reason that I can't rely on the main window's close event is that my application runs on the background leaving a system tray icon.