WinXShell自动更改DPI
本帖最后由 as8686886 于 2024-4-4 17:30 编辑在WinXshell的WinXShell.lua里发现以下一段代码:-- 根据DPI自动切换屏幕分辨率
function MyDisplayChangedHandler()
local cur_res_x = Screen:GetX()
if last_res_x == cur_res_x then return end
last_res_x = cur_res_x
if last_res_x >= 3840 then
Screen:DPI(150)
elseif last_res_x >= 1440 then
Screen:DPI(125)
elseif last_res_x >= 800 then
Screen:DPI(100)
end
end
这段代码如何调用呢?
winxshell.exe -script WinXShell.lua 没有任何效果
将函数名function MyDisplayChangedHandler()改为function ondisplaychanged再通过EXEC !"%ProgramFiles%\WinXShell\WinXShell.exe" -regist -daemon
EXEC %ProgramFiles%\WinXShell\WinXShell.exe -ondisplaychanged调用也没效果!
EXEC %ProgramFiles%\WinXShell\WinXShell.exe -luacode "MyDisplayChangedHandler()"
这个函数是 WinXShell 作为外壳时,当系统分辨率变化后,根据分辨率尺寸进行自动调整DPI。
你是Explorer.exe外壳环境运行麽。 进来学习 slore 发表于 2024-4-4 15:42
这个函数是 WinXShell 作为外壳时,当系统分辨率变化后,根据分辨率尺寸进行自动调整DPI。
你是Explorer ...
是Explorer环境 hua_wuxin 发表于 2024-4-4 15:42
EXEC %ProgramFiles%\WinXShell\WinXShell.exe -luacode "MyDisplayChangedHandler()"
这个命令可以,Explorer模式下可以用,多谢! 学习 谢谢分享 777
页:
[1]