void moveWindowCenter(QWidget* widget)
{
    if (widget) {
        QRect re = QApplication::activeWindow()->screen()->availableGeometry();
        widget->move((re.width() - widget->width()) / 2 + re.x(), 
                     (re.height() - widget->height()) / 2);
    }
}
----------------------------------
调用
widget.adjustSize();
moveWindowCenter(widget);
widget.show();
 
------------------------------------------
防坑提示:多屏幕时,弹出式窗口,可在当前屏幕居中,不会在其它屏幕居中