一、环境介绍
操作系统: 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()
关注
打赏
热门博文
- 智慧农业: STM32F103ZE+ESP8266+腾讯云物联网平台+微信小程序设计
- STM32+ESP8266+MQTT协议连接OneNet物联网平台
- STM32+ESP8266+MQTT协议连接阿里云物联网平台
- Linux下编写ENC28J60网卡驱动,完善网络设备框架
- Linux下automake工具使用(自动构建Makefile文件)
- Linux系统下基础命令介绍
- QT软件开发-得到唯一文件名-当前时间与GUID
- 音频频谱显示-基于fmod设计音乐播放器并动态显示频谱图(二)
- 音频频谱显示-显示音频文件静态频谱图(一)
- QT软件开发-基于FFMPEG设计录屏与rtsp、rtmp推流软件(支持桌面与摄像头)(三)