2016-04-20 4 views
0

ich auf diese Funktion in den Quarz-Display Services von Mac OS X gekommen sind:Wie programmatisch Anzeige zu steuern, in Swift Mirroring

CGConfigureDisplayMirrorOfDisplay 

Aber als eine echte Noob in Swift, ich habe eine harte Zeit, herauszufinden, wie man es benutzt. Das möchte ich erreichen:

Ich habe drei Monitore an meinen Mac angeschlossen. Normalerweise möchte ich, dass alle drei im "erweiterten Desktop" -Modus eingerichtet werden, aber wenn ich eine Präsentation in Keynote starte, möchte ich, dass ein Monitor die Hauptanzeige und die anderen beiden Monitore die "Presenter-Anzeige" anzeigen.

Die einzige Möglichkeit besteht darin, vor dem Start der Keynote-Diashow einen gespiegelten Satz der beiden Anzeigen zu erstellen und anschließend die gespiegelte Gruppe wieder freizugeben.

Ich möchte das programmgesteuert tun. Kann mir jemand Anleitung geben, wie das geht? Mein Plan ist, ein Applescript-Skript zu schreiben, das Keynote ein anderes schnelles Skript aufrufen wird, um die Spiegelung zu aktivieren, wann immer die Diashow ausgeführt wird.

+0

Sie können dies nicht in AppleScript (abgesehen von GUI Scripting) tun, nicht einmal in AppleScriptObjC (weil die meisten der Quarz-API in unteren Ebene C geschrieben wird) – vadian

Antwort

1

fand ich diesen Objective-C-Code: https://github.com/fcanas/mirror-displays

Es ist für mich zu arbeiten, und ich war in der Lage, ihn zu ändern etwas zu tun, was ich wollte, es zu tun. Ich würde es gerne in einer anderen Sprache machen, aber das wird jetzt funktionieren.

+0

1) Bitte erläutern, was der Link abdeckt 2) Wenn Sie beantworte deine Frage bitte als akzeptierte Antwort –

+0

Ich habe dies als Antwort markiert, aber die wirkliche Antwort für mich war, einfach auf die neueste Version von Keynote zu wechseln. Die neuen Versionen von Keynote können nahtlos mehr als zwei Displays verarbeiten. –

Verwandte Themen