QT窗口不随系统缩放而变化
时间: 2023-08-24 16:07:18 浏览: 246
如果你想要让Qt窗口不随系统缩放而变化,你可以在窗口的resizeEvent()事件中添加一些代码。在代码中,你可以设置窗口的最小大小和最大大小,并且在窗口大小改变时检查窗口是否超出了这些范围。如果超出了范围,你可以设置窗口的大小为最小或最大值。以下是一个例子:
```cpp
void MyWindow::resizeEvent(QResizeEvent *event)
{
int minWidth = 500; // 设置窗口的最小宽度
int minHeight = 400; // 设置窗口的最小高度
int maxWidth = 800; // 设置窗口的最大宽度
int maxHeight = 600; // 设置窗口的最大高度
QSize size = event->size();
// 检查窗口是否超出了最小或最大范围
if (size.width() < minWidth || size.height() < minHeight) {
size.setWidth(minWidth);
size.setHeight(minHeight);
} else if (size.width() > maxWidth || size.height() > maxHeight) {
size.setWidth(maxWidth);
size.setHeight(maxHeight);
}
// 设置窗口的大小
resize(size);
}
```
在这个例子中,我们设置了窗口的最小宽度和最小高度为500和400,最大宽度和最大高度为800和600。在resizeEvent()事件中,我们检查窗口的大小是否在这些范围内,并将其调整为最小或最大值。最后,我们设置窗口的大小为新的大小。这样,即使系统缩放发生变化,你的Qt窗口也会保持固定的大小。
阅读全文