窗口最大化后跑偏几个像素
windows平台
首先通过代码实现窗口最大化
int title_bar_height = style()->pixelMetric(QStyle::PM_TitleBarHeight); // 获取标题栏高度 QRect primary_rect = QApplication::desktop()->availableGeometry(); this->setGeometry(0, title_bar_height, primary_rect.width(), primary_rect.height() - title_bar_height);
PM_TitleBarHeight获取的标题栏高度=27,设置后的QWidget geometry=(0, 27, 2560, 1525),我这里屏幕为2560*1600
点击标题栏的最大化按钮后,QWidget geometry=(0, 23, 2560, 1529),一开始还以为是标题栏变窄了,但仔细看QWidget分别向上和向下扩充了4个像素,是QWidget本身的大小改变了,标题栏被推向屏幕外了。但只有Y方向上会有这个行为,X方向并没有改变