Qt程序启动时会出现一闪而过的小窗口怎么办

1.问题描述,开发程序时,会自定义一些窗口,字窗口,嵌入窗口,弹出窗口等,启动程序时会一闪而过显示一些小窗口;怎么解决?

 

 2.解决办法

因为自定义了一些窗口,没有指定父类窗口,而且窗口的属性没有设置为无边框子窗口;导致这个自定义的子窗口没有父窗口;就会独立的方式显示出来;

(1)在自定义子窗口构造函数下加入下面两句

setWindowModality(Qt::NonModal);//无模态子窗口;不会阻塞其他窗口响应;
setWindowFlags(Qt::Widget|Qt::FramelessWindowHint);//Widget,这是QWidget的默认类型。如果它们有父级,这种类型的部件是子部件,如果没有父控件,则为独立窗口。FramelessWindowHint无边框;

(2)给自定义子窗口设置父类

labelPicLeft.setParent(ui.widgetPic);

 

posted @ 2022-12-06 11:49  一字千金  阅读(1584)  评论(0)    收藏  举报