一、环境介绍
操作系统: win10 64位
QT版本: QT5.12.6
编译器: MinGW 32
二、实现代码每次程序打开之后,根据当前屏幕分辩率进行计算缩放系数,然后设置界面上的控件尺寸,不管有没有使用布局器都可以设置。
/**************************************************
作者: DS小龙哥
环境: win10 QT5.12.6 VS2017 32位 Release
功能: 自适应工具栏按钮大小
**************************************************/
void AutoZoomButtonSize()
{
//获取屏幕属性
QScreen *screen = QGuiApplication::primaryScreen();
//获取屏幕的分辨率
int lcd_width = screen->size().width();
int lcd_height = screen->size().height();
qDebug() findChildren();
//获取界面上所有的按钮
QList buttonList = this->findChildren();
//设置按钮大小
for (int i = 0; i < buttonList.count(); i++)
{
qDebug() y();
int oldW = widget->width();
int oldH = widget->height();
qDebug() move(oldX*factorx, oldY*factory);
widget->resize(oldW*factorx, oldH*factory);
widget->setMaximumSize(oldW*factorx, oldH*factory);
widget->setMinimumSize(oldW*factorx, oldH*factory);
qDebug()
关注
打赏