[英]macOS CGConfigureDisplayOrigin doesn't work as expected
我有多個顯示器並嘗試使用 Quarz Display API 更改主顯示器,我的 function 是
int setDisplayOrigin(CGDirectDisplayID display, int x, int y) {
CGDisplayConfigRef cfg;
auto ret = CGBeginDisplayConfiguration(&cfg);
if (ret != kCGErrorSuccess) return ret;
ret = CGConfigureDisplayOrigin(cfg, display, x, y);
if (ret != kCGErrorSuccess) return ret;
ret = CGCompleteDisplayConfiguration(cfg, kCGConfigureForAppOnly);
return ret;
}
要將特定監視器設置為主監視器,我將其稱為 function,其中 0 和 x 和 y
setDisplayOrigin(directDisplayID, 0, 0)
macOS 確實重新排列了顯示,但是當我再次檢查它的邊界時,相關的顯示不會以 (0, 0) 為原點,並且每個返回的值都是成功的 (KCGErrorSuccess)
感謝 Ken 的提示,重新定位當前主顯示器,然后將目標顯示器的原點設置為 (0, 0),這是使其工作的方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.