windows - Go - 如何检测 Windows 或 Mac 桌面屏幕是横向还是纵向模式?

标签 windows macos go

使用 Go,我如何检测 Windows 或 Mac PC 是横向还是纵向模式? 下面是一个示例,如果是横向或纵向,我需要阅读布局操作。

package main

import "os/exec"
import "runtime"
import "fmt"

const url = "http://localhost:8080/demo1?action=landscape"


func main() {      
  myos := runtime.GOOS
  /////------------------> Detect the landscape or portrait of the screen???


  if myos == "windows" {
    chrome := "C:/Program Files/Google/Chrome/Application/chrome.exe"
    cmd := exec.Command(chrome, "--chrome-frame", "--kiosk", url)
    err := cmd.Start()
    if err != nil {
      // 64-bit
      //println("Failed to start chrome:", err)
      chrome := "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe"
      cmd := exec.Command(chrome, "--chrome-frame", "--kiosk", url)
      cmd.Start()       
    } 

  } else if myos == "darwin" {
    // open -b com.google.Chrome --args <which args to pass to Chrome>
    // "/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome"
    //chrome := "/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome"
    cmd := exec.Command("open", "-b" , "com.google.Chrome", "--args", "--chrome-frame", "--kiosk", url)
    err := cmd.Start()
    if err != nil {
      fmt.Println("failed")
    } 

  } else {
    //Linux    
    chrome := "google-chrome"
    cmd := exec.Command(chrome, "--chrome-frame", "--kiosk", url)
    err := cmd.Start()
    if err != nil {
      fmt.Println("failed")
    }

  }

}

最佳答案

再一次,不是直接回答你的问题,但可能会解决你的问题。

参见 this以获得描述。您真正需要做的就是通过 javascript 检查窗口的尺寸并使用正确的参数重新加载页面。

如果高度>宽度,则为纵向模式,否则为横向

关于windows - Go - 如何检测 Windows 或 Mac 桌面屏幕是横向还是纵向模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21397615/

相关文章:

c++ - 以编程方式为任务计划程序创建/删除任务

c++ - DuplicateHandle 的代价

macos - gfortran 是否可以使用 MOLD 进行分配?

macos - 如何在 Visual Studio For Mac 中执行 T4 模板文件?

go - 如何操作 Hyper-v WMI 类和方法

ubuntu - golang build -i -a 失败(权限被拒绝)

c++ - 在 C++ (WLANAPI) 中获取 Windows wifi 托管网络设备的 ip 地址

windows - AutoIt ControlCommand 未按预期工作

macos - 终端 (Mac) 创建包含用户输入的别名

Gorilla mux 自定义中间件