码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Java应用如何不改代码,调整窗口大小


    最近工作上遇到了这个问题,浅浅的研究了一点,这里记录一下。

    有不同意见欢迎评论区交流。


    需求

    项目需求:

    客户已经开发好了应用,不过应用在系统上看起来有点小,希望应用能在不修改代码的情况下,通过其他手段让窗口能自适应。

    环境

    系统:Ubuntu2004

    硬件:amd64主机

    方案一

    我们优先考虑使用指令的方式解决这个问题,这里有两种方案。

    1. #假如应用为SimpleApp.class
    2. 1. GDK_SCALE=2 java SimpleApp
    3. 2. java -Dsun.java2d.uiScale=2.0 SimpleApp

    这两条指令都是将窗口设置为现在的2倍,这种指令只支持整数倍缩放。

    (看其他的博客写的支持1.5这种小数缩放,不过我测试没效果)

    ps:这个放大不是完全的等比例放大,放大的过程可能会打乱窗口布局。

    这里的缩放是JDK9引入的新功能:JEP 263: HiDPI Graphics on Windows and Linux

    是JDK8上的issue转化来的:JDK-8055212

    也就是说Java8上没法缩放。

    我没有找到这个功能backport到Java8的patch,有发现的朋友欢迎在评论区补充。

    方案二

    使用Java8的话就没法缩放窗口,因此又查到了另一个方案。

    GitHub - rubo77/set_resolution.py

    这是一个Python脚本,为特定的窗口设置分辨率。

    -------------------------

    待续未完。

  • 相关阅读:
    数据绑定之数据类型转换
    什么是传递函数模型?
    【原型模式】设计模式系列:高效克隆的艺术(深入解析)
    都讨论大厂面试,当我小厂面试请喝茶的?
    嵌入式Linux应用开发-基础知识-第十九章驱动程序基石③
    Pinia基础知识
    高等教育学:师生关系
    Java NIO模型(提供代码示例)
    Stable Diffusion扩散模型推导公式的基础知识
    含文档+PPT+源码等]精品基于Uniapp+SSM实现的新闻APP[包运行成功]计算机毕业设计安卓项目源码
  • 原文地址:https://blog.csdn.net/weixin_48885322/article/details/134446258
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号