首页| 论坛| 消息

标题:QT最大化恢复后控件大小改变了
作者:suzhuorui
日期:2020-08-18 09:59
内容:

自定义了一个标题栏,存在(最大化(恢复正常),最小化,关闭)等按钮。
界面中存在一系列布局,其中包括一个QGroupBox,这个QGroupBox中是水平布局,存在两个QLabel,一个用来显示摄像头,一个用来显示信息。
界面事件处理用的事件过滤器eventFilter,对标题栏中的按钮进行事件重写(最大化,最小化,恢复,关闭)
最近遇到这么一个问题,运行程序后,点击最大化按钮后使窗体最大化,再次点击使窗体恢复原来大小,但是其中用来显示摄像头的QLabel大小变了,不是正常界面中的大小。还有就是,在事件过滤器eventFilter中实现了双击摄像头QLabel会使他全屏显示,再次双击恢复原来大小,这个功能也有问题,跟上面的问题一样,都是放大恢复后不是原始大小。我觉得两个问题可能是一个原因导致的,大佬们帮我看看是怎么回事呀。
bool MainWindow::eventFilter(QObject *o, QEvent *e)
{
QMouseEvent* ev=static_cast(e);
if(e->type()==QEvent::MouseMove)//鼠标移动
{
if(!isMax)
{
//只要鼠标移动就更改鼠标样式,并检测鼠标是否在边框上
setMouseStyle(getMouseArea(ev->pos()));
//判断是否按下标题移动
if(mousePressed)
{
QWidget* pw=this->childAt(pressedPoint);
if(pw==ui->my_title||pw==ui->ico)
..


#1 [suzhuorui 08-18 10:00]
大佬们帮我看看呀

回复 发表
主题 版块