当前位置: 首页 > wzjs >正文

做电商需要哪些网站站长分析工具

做电商需要哪些网站,站长分析工具,磁力蜘蛛种子搜索,做网站java步骤前言 Windows 显示设置中,可以修改缩放比,所有界面和文字会同比例放大或缩小,在开发桌面程序时, 实时监测Qt应用程序在不同缩放比例下的表现,可以及时调整程序界面以适应不同显示屏幕的需求。 正文 本文通过Qt相关…

前言

Windows 显示设置中,可以修改缩放比,所有界面和文字会同比例放大或缩小,在开发桌面程序时, 实时监测Qt应用程序在不同缩放比例下的表现,可以及时调整程序界面以适应不同显示屏幕的需求。
在这里插入图片描述

正文

本文通过Qt相关接口实时监测系统分辨率和缩放比的变化,并通过发送信号通知UI进行处理。兼容多屏情况,会自动检测软件窗口所在的屏幕。
关键代码:

// HighDpiHelper.h
#ifndef HIGHDPIHELPER_H
#define HIGHDPIHELPER_H#include "qfont.h"
#include "qscreen.h"
#include <QObject>
#include <QWindow>
#include <QGuiApplication>
#include <QDebug>/*** @brief The HighDpiHelper class* @author luoyayun361* 自动监测程序所在的屏幕 缩放比变化* 使用需要先调用 dpiHelper.setWindow(mainWindow),mainWindow是主窗口id*/class HighDpiHelper : public QObject
{Q_OBJECTpublic:HighDpiHelper() {//适配多屏幕的情况,只监测程序窗口所在的屏幕for(auto &screen : qApp->screens()){connect(screen,&QScreen::logicalDotsPerInchChanged,this,[=](qreal dpi){if(!m_win){return;}auto sc = QGuiApplication::screenAt(QPoint(m_win->x(),m_win->y()));auto send = qobject_cast<QScreen*>(sender());if(sc == nullptr && send == nullptr){return;}if(sc->geometry() == send->geometry()){qDebug() <<__FUNCTION__<< "logicalDotsPerInchChanged="<<dpi/96.;emit dpiChanged(dpi/96.0f);}});}for(auto &screen : qApp->screens()){connect(screen,&QScreen::geometryChanged,this,[=](const QRect &geometry){if(!m_win){return;}auto sc = QGuiApplication::screenAt(QPoint(m_win->x(),m_win->y()));auto send = qobject_cast<QScreen*>(sender());if(sc == nullptr && send == nullptr){return;}if(sc->geometry() == send->geometry()){emit screenGeometryChanged(geometry);}});}}Q_INVOKABLE void setWindow(QWindow *win){m_win = win;}//获取当前屏幕缩放比Q_INVOKABLE float getScreenScalingFactor() {auto sc = QGuiApplication::screenAt(QPoint(m_win->x(),m_win->y()));if(sc){return sc->logicalDotsPerInch() / 96.0f; // 96 dpi 是 Windows 的标准DPI,所有的缩放比都是相对于标准 DPI 的}else{return 1.0;}}//获取窗口所在的屏幕尺寸Q_INVOKABLE QSize getScreenAvailableSize() {auto sc = QGuiApplication::screenAt(QPoint(m_win->x(),m_win->y()));if(sc){return sc->availableSize();}else{return qApp->screens().first()->availableSize();}}signals:void dpiChanged(float scaleFactor);void screenGeometryChanged(const QRect &geometry);
private:QWindow *m_win = nullptr;
};
#endif // HIGHDPIHELPER_H

如果是在QWidget项目中,可以将QWindow 改成QWidget,然后将主窗口指针传进来即可。QML项目的话 直接使用QWindow就行。附件提供了两种场景下的demo调用。

本文demo下载

http://www.dtcms.com/wzjs/293591.html

相关文章:

  • wordpress改地址后打不开seo顾问服务深圳
  • 广东汕头最新消息关键词优化
  • 客户说做网站没效果搜狐财经峰会
  • 做打折网站如何简阳seo排名优化培训
  • 网站用的服务器是什么百度灰色词优化排名
  • 网站维护明细报价表软文代发
  • 怎么做自己的网址seo 优化一般包括哪些内容
  • 网站跳转站代码优化设计三年级下册数学答案
  • 网站开发赚钱方向最近中国新闻热点大事件
  • 邯郸北京网站建设女教师遭网课入侵视频
  • 做办公用品网站工作计划最佳的资源搜索引擎
  • 代理游戏平台赚钱吗产品seo是什么意思
  • wordpress网站描述推广普通话的意义是什么
  • 微信24小时人工申诉搜索引擎优化的基本方法
  • 大型网站权限设计青岛网站建设公司哪家好
  • 可以用电脑做网站主机吗关键词排名优化流程
  • 用wordpress建一个网站网站提交收录软件
  • 哪个网站做婚礼邀请函好今日十大热点新闻事件
  • 永久免费的网站营销软文范例大全100字
  • 做流媒体视频播放网站求助怎么制作属于自己的网址
  • 织梦旅游网站模板关键词优化平台有哪些
  • 同ip网站怎么做长沙百度百科
  • 兰州网站建设公司电话长沙疫情最新消息
  • 微信开发流程四步搜索引擎优化的完整过程
  • 建设国家标准官方网站营销课程培训都有哪些
  • 做网站需要域名和什么百度关键词优化方法
  • 精品课程网站建设开题报告好的竞价推广托管
  • 深圳营销型网站公司电话什么是seo优化?
  • 96633微信客服人工打不通seo自学网
  • 国外空间网站备案近一周新闻热点事件