首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Delphi7的GetDpiForMonitor支持每个监视器的DPI感知

使用Delphi7的GetDpiForMonitor支持每个监视器的DPI感知
EN

Stack Overflow用户
提问于 2017-06-18 20:45:40
回答 1查看 1.1K关注 0票数 0

WinAPI函数GetDpiForMonitor没有针对Delphi7的头翻译,在互联网上搜索也找不到。

如果任何人有演示如何在Delphi7中使用这个WinAPI函数的示例代码,那将非常有帮助。

EN

Stack Overflow用户

回答已采纳

发布于 2017-06-19 03:10:58

下面是如何在Delphi 7中动态加载DLL和调用函数的方法:

代码语言:javascript
运行
复制
Type
  TMONITOR_DPI_TYPE = (
    MDT_EFFECTIVE_DPI {= 0},
    MDT_ANGULAR_DPI   {= 1},
    MDT_RAW_DPI       {= 2},
    MDT_DEFAULT       {= MDT_EFFECTIVE_DPI });

var
  dpiX              : UINT;
  dpiY              : UINT;
  ErrCode           : HResult;
  hShcore           : THandle;
  GetDpiForMonitor  : function(monitor: HMONITOR; dpiType: TMONITOR_DPI_TYPE; var dpi, dpiY: UINT): HRESULT; stdcall;

begin
  hShcore := GetModuleHandle('Shcore');
  If hShcore <> 0 then GetDpiForMonitor := GetProcAddress(hShcore,'GetDpiForMonitor');
  If @GetDpiForMonitor <> nil then 
    ErrCode := GetDpiForMonitor(Monitor.Handle,MDT_EFFECTIVE_DPI,dpiX,dpiY);
end;
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44615108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档