如何获得系统的显示比例

action爱生活 2014-12-29 11:34:01
再发一帖

如何知道系统是按100%显示的还是125%显示的
...全文
187 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
action爱生活 2015-02-02
  • 打赏
  • 举报
回复
引用 3 楼 draculamx 的回复:
找到了,亲测有效:

    HDC screen = GetDC(NULL);
    double hPixelsPerInch = GetDeviceCaps(screen,LOGPIXELSX);
    double vPixelsPerInch = GetDeviceCaps(screen,LOGPIXELSY);
    ReleaseDC(NULL, screen);
    double dpi=(hPixelsPerInch + vPixelsPerInch) * 0.5;
谢谢,是你这样的,已经解决。
draculamx 2014-12-29
  • 打赏
  • 举报
回复
找到了,亲测有效:

    HDC screen = GetDC(NULL);
    double hPixelsPerInch = GetDeviceCaps(screen,LOGPIXELSX);
    double vPixelsPerInch = GetDeviceCaps(screen,LOGPIXELSY);
    ReleaseDC(NULL, screen);
    double dpi=(hPixelsPerInch + vPixelsPerInch) * 0.5;
draculamx 2014-12-29
  • 打赏
  • 举报
回复

ID2D1Factory* m_pDirect2dFactory;
D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, &m_pDirect2dFactory);
FLOAT dpiX, dpiY;
m_pDirect2dFactory->GetDesktopDpi( &dpiX, &dpiY );
win7下面的代码,xp不知道。。。
action爱生活 2014-12-29
  • 打赏
  • 举报
回复
百度了下,应该就是BCB如何获取系统的DPI,有大牛来指导下吗

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧