windows-如何在golang中获取屏幕分辨率

标签 windows go size screen

好家伙。

我有获取 Windows 系统屏幕分辨率的要求,但我无法通过谷歌获得任何有用的信息。

所以我在 stackoverflow 中寻求帮助。

有人知道怎么做吗?

提前致谢。

更新: 然后我尝试这个命令wmic desktopmonitor get screenheight screenwidth 并得到这样的答案:
这是命令: enter image description here

这是 go-program: enter image description here

最佳答案

有点晚了,但正如 Marco 所建议的,您可以使用 Windows API GetSystemMetrics为了这。最简单的方法是通过 github.com/lxn/win包裹:

package main

import (
    "fmt"

    "github.com/lxn/win"
)

func main() {
    width := int(win.GetSystemMetrics(win.SM_CXSCREEN))
    height := int(win.GetSystemMetrics(win.SM_CYSCREEN))
    fmt.Printf("%dx%d\n", width, height)
}

稍微复杂一些,使用GetDeviceCaps :

package main

import (
    "fmt"

    "github.com/lxn/win"
)

func main() {
    hDC := win.GetDC(0)
    defer win.ReleaseDC(0, hDC)
    width := int(win.GetDeviceCaps(hDC, win.HORZRES))
    height := int(win.GetDeviceCaps(hDC, win.VERTRES))
    fmt.Printf("%dx%d\n", width, height)
}

关于windows-如何在golang中获取屏幕分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47256354/

相关文章:

windows - Windows 上 "my computer"文件夹的路径是什么?

java - 我如何在 Windows 上对 RPM/PKG/DEB 进行 JPackage?

http - 使用 goroutines 下载文件?

区分大小写的 JSON Unmarshal 结构

Android ImageView 图片太大

android - Assets 创建 - 9 补丁启动画面和屏幕密度

cygwin下调用winapi编译链接静态库

c++ - 错误 C4703 使用了可能未初始化的本地指针变量 'y'

go - 将类型转换为数组 - GO 语法

android - 缩放后获取drawable显示大小