如图:
1.父窗口 Widget (A),注册全局按键 F12。
2.子窗口 Widget (B),里面有N多的按钮。B全屏显示。
3.通过单击B上按钮,弹出自定义QFrame框架。如图中 绿色圈如的那个QFrame,
QMyFrame 继承QFrame类,添加了Label,QPushButton 等,
属性 setWindowFlags(Qt::Popup | Qt::Window);
1.QMyFrame是居中显示,当鼠标单击QMyFrame框架外的区域,该QMyFrame会自动关闭,求详解下!
2.按键F12,也会出现了QMyFrame自动关闭,求详解!!
QMyFrame框架显示,为啥会有这么多的自动关闭现象?求解答。。
------解决方案--------------------
setWindowFlags(Qt::Popup | Qt::Window);因为LZ设置了他的属性是“弹出式的”(popup),焦点离开之后最自己弹回去隐藏的,不用这个这个属性也没事 重写F12设置可见不可见就可以了
------解决方案--------------------
F12也是这个原因呀 按下F12的时候焦点传给给其他的组件, QFrame是弹出式的 失去焦点就会关闭,LZ可以不设置他为Qt::Popup格式就可以了
------解决方案--------------------
在L上的按钮只是负责显示出来就行了 setVisible( true ); setGeometry( 位置 )就可以了,要隐藏的时候 setVisible( false )
------解决方案--------------------
- C/C++ code
QVBoxLayout *vBox = new QVBoxLayout(this);//要设置布局管理器的父对象