Gibt es eine API oder Möglichkeit, einen einzelnen externen Monitor programmatisch über Objective-C auf einem Mac auszuschalten?
Ich möchte eine kleine Menüleiste schreiben, die eine sekundäre Anzeige steuern kann (ohne einen physischen Ein- / Ausschalter), aber den primären Monitor weiterhin verwenden.
Um die API-Dokumentation herumjagend, kann ich nichts anderes finden, als Zustände zu lesen. Ich hoffe also, dass jemand anders eine Idee hat.
Sie können "einen einzelnen Monitor nicht programmgesteuert ausschalten", das ist physikalisch nicht möglich. Das Meiste, was Sie tun können, ist dem Betriebssystem zu sagen, dass es den Monitor nicht benutzen soll, aber ich denke nicht, dass Sie systemweite Einstellungen ändern können, besonders nicht auf der Ebene, an der Sie arbeiten (Obj-C).
> Wenn Sie sich die Core Graphics-API ansehen, die in @ Halleys Kommentar erwähnt wird, versuchen Sie, mit der CGBeginDisplayConfiguration
Methode und sehen Sie, ob Sie eine Anzeigekonfiguration nach Ihren Wünschen einstellen können.
BEARBEITEN: Alternativ können Sie auch CGDisplayCapture
(displayID)
, das die erfasste Anzeige standardmäßig schwarz füllt. Sie können dann
Rufen Sie CGDisplayRelease
(displayID)
, wenn Sie es wieder aktivieren möchten.
Tags und Links objective-c macos cocoa