mirror of
https://github.com/jie65535/GrasscutterCommandGenerator.git
synced 2025-06-07 22:59:14 +08:00
Enable High DPI support (#231)
This commit is contained in:
parent
3d160f9b90
commit
c62b46850c
@ -352,6 +352,7 @@
|
||||
<Compile Include="Utils\ArtifactUtils.cs" />
|
||||
<Compile Include="Utils\Common.cs" />
|
||||
<Compile Include="Utils\GuiRedirect.cs" />
|
||||
<Compile Include="Utils\HighDPIUtil.cs" />
|
||||
<Compile Include="Utils\KeyGo.cs" />
|
||||
<Compile Include="Utils\HotKeyItem.cs" />
|
||||
<Compile Include="Utils\HttpHelper.cs" />
|
||||
|
@ -71,6 +71,12 @@ namespace GrasscutterTools
|
||||
if (result != -1)
|
||||
return result;
|
||||
|
||||
// 开启高DPI支持
|
||||
if (Environment.OSVersion.Version.Major >= 6) // 至少需要Vista系统
|
||||
{
|
||||
HighDPIUtil.SetDpiAwareness();
|
||||
}
|
||||
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
|
||||
|
32
Source/GrasscutterTools/Utils/HighDPIUtil.cs
Normal file
32
Source/GrasscutterTools/Utils/HighDPIUtil.cs
Normal file
@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace GrasscutterTools.Utils
|
||||
{
|
||||
internal class HighDPIUtil
|
||||
{
|
||||
public static void SetDpiAwareness()
|
||||
{
|
||||
var dpiAwareness = ProcessDpiAwareness.PerMonitorDpiAware;
|
||||
var hresult = SetProcessDpiAwareness(dpiAwareness);
|
||||
if (hresult != 0)
|
||||
{
|
||||
throw new System.ComponentModel.Win32Exception(hresult);
|
||||
}
|
||||
}
|
||||
|
||||
[DllImport("shcore.dll")]
|
||||
private static extern int SetProcessDpiAwareness(ProcessDpiAwareness value);
|
||||
|
||||
private enum ProcessDpiAwareness
|
||||
{
|
||||
DpiUnaware = 0,
|
||||
SystemDpiAware = 1,
|
||||
PerMonitorDpiAware = 2
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user