我想在打开QMainWindow对象后从静态函数打开一个模态对话框(登录)。
class DialogLog : public QDialog {
DialogLog(QWidget * parent) : QDialog(parent) {
//some code
exec();
}
};
class LogHandler {
static bool log(QWidget * parent) {
DialogLog dl(parent);
//some code
}
};
class WinMain : public QMainWindow {}
main(..) {
QApplication app(..);
WinMain fen;
fen.show;
app.exec();
};
编辑:如何在WinMain的同时/之后运行LogHandler :: log()?
答案 0 :(得分:2)
可能有更好的解决方案,但您可以做的就是:使用即时拍摄的singleshot timer(即一旦事件泵将循环播放)。
计时器将调用例如您的WinMain
类:
void main(..) {
QApplication app(..);
WinMain fen;
fen.show;
QTimer::singleShot(0, &fen, SLOT(login()));
app.exec();
};
在login()
的{{1}}位置,您可以拨打WinMain
:
LogHandler::log()