使用100%缩放比例重新启动Visual Studio 界面模糊的解决方案

问题描述

建议:如果是刚开始写WinForm项目 ,建议刚开始就去进行一个替换 ,要不然后面会很麻烦的 ,不仅要计算size 还要去 计算 location 的值

昨天碰到了这个问题 ,当时设置完之后界面就非常的模糊 ,虽然说界面变大了 ,但是看着异常难受 ,很模糊

解决方案

  1. 新建应用程序清单文件(Application Manifest File)​ , 保持默认名称 app.manifest,点击添加。

  2. 找到这段代码:

    image

    <application xmlns="urn:schemas-microsoft-com:asm.v3"><windowsSettings><dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware></windowsSettings>
    </application>
    
  3. 替换DPI相关配置:

    <application xmlns="urn:schemas-microsoft-com:asm.v3"><windowsSettings><dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true/pm</dpiAware><!-- Windows 10 1703+ 支持 Per-Monitor v2 --><dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">permonitorv2,permonitor</dpiAwareness><longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware> <!-- 保留长路径支持(如果需要) --></windowsSettings>
    </application>
    
  4. 保存文件,重新生成项目即可生效。

替换方案(尺寸不一致解决方案)

因为你刚替换完 ,尺寸与原来的是不一致的 ,所以就需要进一步的替换原先的尺寸


在 DPI 感知的应用程序中,当系统缩放比例从 100% 变为 150% 时,界面元素的实际像素尺寸计算遵循 “逻辑尺寸 × 缩放比例 = 实际像素尺寸” 的规则。以下是具体说明:

假设在 100% 缩放时,某按钮的逻辑尺寸为宽度 100 像素、高度 30 像:

  • 100% 缩放(系数 1.0):实际像素尺寸 = 100 × 1.0 = 100 像素(宽),30 × 1.0 = 30 像素(高)。
  • 150% 缩放(系数 1.5):实际像素尺寸 = 100 × 1.5 = 150 像素(宽),30 × 1.5 = 45 像素(高)。

举例说明:尺寸计算表(基准:89 × 31)

缩放比例 缩放系数 实际宽度(像素) 实际高度(像素) 计算逻辑
100% 1.0 89 31 89 × 1.0 = 89;31 × 1.0 = 31
150% 1.5 133.5 46.5 89 × 1.5 = 133.5;31 × 1.5 = 46.5

在 WinForms 应用中开启 DPI 感知后,系统缩放比例从 100% 变为 150% 时,Location​(控件位置,即 X、Y 坐标)的计算核心遵循 “基准逻辑坐标 × 缩放系数(150% = 1.5)= 实际像素坐标” 规则,同时需结合 WinForms 的 DPI 适配机制(尤其是 .NET Framework 4.6+ 或 .NET Core 3.0+ 的高 DPI 支持),具体细节如下:

一、核心计算逻辑(手动计算场景)

若需手动计算 Location,需明确两个前提:

  1. 基准坐标​:100% 缩放时,控件在代码中定义的 Location​(如 new Point(20, 30)​,即 X=20,Y=30),这是 “逻辑坐标”,对应 100% 缩放时的实际像素。
  2. 缩放系数​:系统缩放比例对应的系数(100% = 1.0,150% = 1.5)。

计算公式::实际像素坐标(150% 缩放)= 基准逻辑坐标 × 1.5

示例:

假设 100% 缩放时控件基准 Location​ 为 (14, 6)​(X=14,Y=6):

  • 100% 缩放(系数 1.0):实际坐标 = (14×1.0, 6×1.0)​ = (14, 6)(像素)。
  • 150% 缩放(系数 1.5):实际坐标 = (14×1.5, 6×1.5)​ = (21, 9)(像素)。

写到最后

当然还有像这种自动适配的 ,不需要手动计算 ,就比如DPI自动缩放功能 ,但是我目前还不会这个 ,想着项目刚开始 ,就先以最简单的开始做起 ,也避免了代码中诸多的麻烦所在

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/926830.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做flash网站遇到函数新手学习做网站

文章目录 22.1 引用其他程序集22.2 命名空间22.2.1 命名空间名称22.2.2 命名空间的补充22.2.3 命名空间跨文件伸展22.2.4 嵌套命名空间 22.3 using 指令22.3.1 using 命名空间指令22.3.2 using 别名指令22.3.3 using static 指令 22.4 程序集的结构22.5 程序集标识符22.6 强命名…

西宁北京网站建设杨浦集团网站建设

blockquote元素的使用已经非常多样化&#xff0c;但语义上它只适用于一件事–标记了一段你的网页被引用从另一来源。这意味着&#xff0c;如果你想让那些花俏的引文&#xff0c;<blockquote>是不是你应该使用元素。让我们看一看如何你应该使用此元素&#xff1a; <art…

什么网站做的产品海报比较多网站怎么开启gzip

好多小伙伴使用win7系统的电脑版微信的时候会收到很多文件资料&#xff0c;平时可以进入微信直接获取文件&#xff0c;那么当我们碰到断网的情况下如何准确找到这些文件呢?并且如果想对文件默认保存位置做出修改又该如何解决呢?小伙伴不要急&#xff0c;现证小编就教大家怎样…

公司网站开发的核心技术企业 网站 程序

简介&#xff1a; 云原生架构本质上也是一种软件架构&#xff0c;最大的特点是在云环境下运行&#xff0c;也算是微服务的一种延伸。 起源 1. 云原生&#xff08;Cloud Native&#xff09;的由来 云原生的概念最早开始于 2010 年&#xff0c;在当时 Paul Fremantle 的一篇博…

网站定制开发公司推荐为什么不用wordpress

nodejs中使用modbus-serial库创建Modbus TCP读取设备的数据在nodejs中安装modbus-serial库本人使用的开发环境是Windows10下的VSCode&#xff0c;安装并配置好了npm、node、cnpm等工具&#xff0c;使用cnpm安装了modbus-serial库&#xff0c;可以在npm中搜到modbus-serial包以及…

国外域名注册商网站彬县网

当学习 QT 编程时&#xff0c;掌握以下几个关键模块是非常重要的。下面是每个模块的简要说明及示例程序&#xff1a; Qt Widgets 模块&#xff1a; 说明&#xff1a;Qt Widgets 模块包含用于创建传统桌面应用程序的 UI 控件。示例程序&#xff1a;#include <QApplication>…

如何用网站赚钱长春网站制作系统

题目描述: 提取字符串中的最长合法简单数学表达式,字符串长度最长的,并计算表达式的值。如果没有,则返回0 简单数学表达式只能包含以下内容 0-9数字,符号 +-* 说明: 1. 所有数字,计算结果都不超过long 2. 如果有多个长度一样的,请返回第一个表达式的结果 3. 数学表达式…

WordPress邮箱内容修改关键词优化难度分析

未来网络运维趋势 未来的网络发展趋势可以用三个多样化来概括&#xff0c;一是网络设备的多样化&#xff0c;二是网络组网方式的多样化&#xff0c;三是网络应用的多样化&#xff1b;再加上网络发展与信息化建设的紧密结合&#xff0c;这使得未来的网络运维工作面临着新的…

做的网站修改编码详情页设计说明

ConcurrentHashMap&#xff08;并发哈希表&#xff09;是Java集合框架中的一种实现Map接口的类&#xff0c;它专为多线程环境设计&#xff0c;以提供更好的性能和线程安全。在理解 ConcurrentHashMap 是如何实现线程安全的时候&#xff0c;我们可以分别探讨 JDK 1.8 之前和之后…

网站建设集群化的必要东莞公司注册

使用 getopts 命令 getopt 与 getopts 的不同之处在于&#xff0c;前者在将命令行中选项和参数处理后只生成一个输出&#xff0c;而后者能够和已有的 shell 位置变量配合默契。 getopts 每次只处理一个检测到的命令行参数。在处理完所有的参数后&#xff0c;getopts 会退出并返…

网站建设策划模板品牌网站建设S苏州

什么是子网划分? 1、概念&#xff1a;借主机位给网络位使用,以此来达到把一个大网段划分为n个儿子网段的目的&#xff0c;2. 为何要进行子网划分&#xff1f;3、子网掩码&#xff1a;就是对ip地址打记号4、 网络地址的计算机方式&#xff1a;ip地址与子网掩码都转换成二进制&a…

懒人做图网站房地产设计图与规划图

最近在使用Oracle的过程中&#xff0c;出现了数据库连接数满的情况&#xff0c;导致程序及数据库连接工具连接不上。主要从两个方面来考虑这件事&#xff0c;从程序方面来看&#xff1a;1.进行数据库连接操作后未释放连接&#xff1b;2.若使用了数据库连接池&#xff0c;则考虑…

网站规划与建设进度在淘宝做网站和网络公司做网站区别

介绍: 视图&#xff08;View&#xff09;是数据库中的一种虚拟表格&#xff0c;它是基于一个或多个实际表格&#xff08;或其他视图&#xff09;的查询结果集合。与实际表格不同&#xff0c;视图不包含实际存储的数据&#xff0c;而是根据定义在其之上的查询语句来动态生成数据…

洛阳网站建设多少钱微信客户端app下载

hdmi从插入到拔出经过底层一系列检测到应用层&#xff0c;应用层获取hdmi插入状态后又会做出一系列相应的动作&#xff0c;下面梳理了从应用层到底层一步步追踪到芯片的hpd-pin的检测过程。 frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.…

某工程师入职华为,职级比较高,但还看不懂代码,有点尴尬

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 3546955410049087华为从去年,给校招生职级,收缩很多了。去年校招,9硕 给13级,很…

三网合一网站报价公司的网站建设一般需要多少费用

文章目录 前言步骤1首先在URP的配置文件里添加SSR后处理2 修改RenderingPath为延迟渲染3 启用深度纹理4 为物体添加脚本 插件下载 前言 用来实现屏幕空间反射效果 unity 版本为2021.3.8LTS&#xff0c;低版本的untiy URP的参数设置位置z可能会不同 步骤 1首先在URP的配置文件…

如何建设一个查询网站苏州建设信息网

这篇文章主要讲解PB的配置文件。从用途方面分析&#xff0c;PB包含两种配置文件。分别是源码配置文件和镜像配置文件。下面分别讲解这两种配置文件。 一、源码配置文件&#xff1a;源码配置文件用于编译源码时使用。这里的源码是指Windows CE公开的源码&#xff0c;如驱动程序、…

免费行情软件app网站直播网站联盟接口怎么做

最近一台核心库备库完成恢复后打开slave&#xff0c;导致主库传送binlog&#xff0c;瞬间占满网络&#xff0c;触发故障。 为了做一些限制&#xff0c; 给mysql在发送binlog的函数(mysql_binlog_send)里每隔一段时间sleep一次&#xff0c; 增加了两个参数&#xff1a; master_s…

长春seo公司长春网站设计网站建设+设计那种连接线厂家

第一章 前言 Perforce SCM System是一款构建于可伸缩客户/服务器结构之上的软件配置管理工具。仅仅应用 TCP/IP&#xff0c;开发人员就能够通过多种Perforce客户端&#xff08;几种平台的GUI、WEB、或命令行&#xff09;访问 Perforce服务器。Perforce能够被快速和容易地部署…