QFileDialog::getOpenFileName(this, tr("Open Image"), QDir::homePath(), tr("Image Files (*.png *.jpg *.bmp)"), 0, QFileDialog::DontUseNativeDialog);
增加标识位QFileDialog::DontUseNativeDialog,作用是不使用系统自带的弹窗。
弹窗不显示的原因:shell对话框陷入僵局并不罕见。当显示它的线程不是STA线程时,它将发生。或者,如果您在计算机上安装了外壳扩展,则表现不正常。问题根本没有提供线索,挂起的UI线程的堆栈跟踪是最低要求。
参考链接:[https://stackoverflow.com/questions/31983412/code-freezes-on-trying-to-open-qdialog]