Skript für "Monitore Erkennen"???

Schmittmann

Schmittmann

Aktives Mitglied
Thread Starter
Dabei seit
19.11.2003
Beiträge
116
Reaktionspunkte
0
Guten Morgen alle miteinander,
Ich hab folgendes Problem: Meine Mutter hat 'nen Mac Mini und dadran irgendnen alten billig-PC-Röhrenmonitor hängen. Über den DVI-VGA-Adapter funktioniert das zwar ohne Probleme, allerdings nur, wenn der Monitor beim Start des Kleinen schon an is. Wenn man ihn automatisch zu irgendeiner Urzeit starten lässt und der Monitor ist dabei noch aus, erkennt er ihn später nicht mehr und man muss blind neu starten.
Ich hab mir jetzt gedacht, dass man ja "einfach" ein Monitore-erkennen-Skript schreiben könnte, dass dann – über eine bestimmte Tastenkombination gestartet – alle Probleme beseitigt.
Meine Frage jetzt (nach halber Stunde selbst Rumprobieren und zwei Stunden mehr oder weniger ergebnisloser Foren- und Google-Recherche): Weiß einer, wie so ein Script aussehen müsste?

Es grüßt:
Schmittmann

PS.: Achso, der Mini ist mit Tiger unterwegs, falls das von Bedeutung ist.
 
Zuletzt bearbeitet:
Probier' mal folgendes Skript:

tell application "System Preferences"
****activate
****
set current pane to pane "com.apple.preference.displays"
end tell
tell application "System Events"
****tell process "System Preferences"
********tell window 1
************tell tab group 1
****************tell group 1
********************click button 1
****************end tell
************end tell
********end tell
****end tell
end tell
tell application "System Preferences" to quit


Ich habe es hier mit OS X 10.3.8 getestet. Es werden die Systemeinstellungen geöffnet, zu "Monitore" umgeschaltet und dort auf den Button "Monitore erkennen" geklickt. Danach werden die Systemeinstellungen wieder geschlossen.

Eine Tastenkombination kannst du dem Skript via Spark, iKey oder Butler zuweisen.

P.S. Die Sternchen, die das Forum hier bei den Einrückungen einfügt, bitte wieder entfernen.
 
Vielen Dank!

Dankeschön, Herr Schnee

Okee, mit dem skript komm ich schon mal bis zum entsprechenden fenster in den systemeinstellungen, allerdings hat der skripteditor probleme beim übersetzen folgender Zeilen:

tell group 1
click button 1

woran kann das liegen?
 
Ergänzung

lass ich

tell group 1
click button 1
end tell

im skript aus gehts, aber natürlich fehlt dann was. kann das an tiger liegen oder ist das ein fehler im skript?
 
Schmittmann schrieb:
kann das an tiger liegen oder ist das ein fehler im skript?

Das kann sehr wohl an Tiger liegen. Da braucht nur der Aufbau des Fensters etwas anders zu sein, und schon geht's mit dem UI-Scripting nicht mehr.

Hier müsste man mit dem UI Elements Inspector mal nachsehen, wie die genaue Hierarchie bis hin zu dem Button ist. - Kann ich aber leider nicht machen, da ich noch die schwarze Katze habe.
 
Kannst du den mini nicht einfach in den Ruhezustand versetzten (alt-apfel-Auswurftaste), dann den Monitor einschalten und dann den mini wieder aufwecken? Ich glaube er müsste dann nach Monitoren suchen. Ist bei den Powerbooks ganz praktisch, mal eben einen zweiten Monitor dranhängen der dann beim Aufwachen direkt erkannt und angesprochen wird.
Einfach mal probieren.
Gruß DT
 
Es gibt in OS X schon eine Tastenkombination um externe Displays zu erkennen, zumindest beim PowerBook: Apfel + F2

Vielleicht funktioniert das ja auch beim mini.
 
Apfel F1 und Apfel F2 hab ich schon probiert, weil ich das von meinem TiBook her kannte, aber das scheint bei desktops nicht zu gehen, wie ich merken durfte...

das mit dem Ruhezustand is ne gute idee, hatte ich noch gar nicht dran gedacht. hab jetzt erstmal vorläufig eingestellt, dass ein Druck auf den Ein-/Ausschalter den Kleinen ins Reich der Träume schickt.

also im prinzip fänd ich ein skript eleganter, weil zudem schneller. aber die 5 bis 10 Sekunden machens auch nicht. will sagen: problem ist im prinzip gelöst; falls aber noch einer sagen kann, wie ich snows skript fit für den tiger mache, wäre ich dem sehr verbunden.

vorerst schonmal danke an die Herren, die gepostet haben
clap clap clap clap clap

Schmittmann
 
Zuletzt bearbeitet:
Schmittmann schrieb:
falls aber noch einer sagen kann, wie ich snows skript fit für den tiger mache, wäre ich dem sehr verbunden.

UI Elements Inspector laden,

In den Systemeinstellungen bei Monitore mit der Maus über den Button "Monitore erkennen" fahren. Objekthierarchie im UI Elements Inspector ablesen und hier posten, dann wird's auch was mit dem Skript (vielleicht).
 
he, snow... man kann auch die preferncepanes im interface builde öffnen und dann die objekte auswählen... ;)
 
ich hätte (etwa) zum selben thema noch eine frage: ich müsste per skript. den schreibtischhintergrund vom standard auf einen wechselnden ändern. klappt ganz gut, nur krieg ichs nicht hin, dass links bei den systemeinstellungen im table die richtige zeile ausgewählt wird. ich hab im interface builder nachgesehen: es ist ein table. mit "row" klappt's nicht. weisst du vielleicht was, snow?
 
upps, ich habe übersehen, dass man bei diesem tool den pfad angezeigt bekommt... lad ich gleich runter.
 
Bitteschön, bittegleich

Attributes:
AXRole: “AXButton”
AXRoleDescription: “button”
AXHelp: “(null)”
AXEnabled: “1”
AXFocused (W): “0”
AXParent: “<AXGroup>”
AXWindow: “<AXWindow: “VGA-Monitor”>”
AXTopLevelUIElement: “<AXWindow: “VGA-Monitor”>”
AXPosition: “x=898 y=336”
AXSize: “w=160 h=32”
AXTitle: “Monitore erkennen”

@Snow: ich hoffe, das is das was du wolltest. was ich noch anmerken wollte: beim Apple Skripteditor gibts, nachdem man das Skript eingegeben hat ja die Möglichkeit es "übersetzen" zu lassen. Dabei prüft der ja auch immer gleich die Syntax. Auf jeden Fall muckt Skripteditor schon beim übersetzen des Skripts, obwohl die Syntax bei 10.3 und 10.4 doch eigentlich die gleiche sein müsste. ???

Herzlichst
Schmittmann

PS.: Gute Nacht, Forum *gähn*.
 
achso und entschuldigt die lange wartezeit bis zu meinen Antworten – ich bin was den Internetzugang betrifft im Moment etwas eingeschränkt.
 
Schmittmann schrieb:
Attributes:
AXRole: “AXButton”
AXRoleDescription: “button”
AXHelp: “(null)”
AXEnabled: “1”
AXFocused (W): “0”
AXParent: “<AXGroup>”
AXWindow: “<AXWindow: “VGA-Monitor”>”
AXTopLevelUIElement: “<AXWindow: “VGA-Monitor”>”
AXPosition: “x=898 y=336”
AXSize: “w=160 h=32”
AXTitle: “Monitore erkennen”

@Snow: ich hoffe, das is das was du wolltest. was ich noch anmerken wollte: beim Apple Skripteditor gibts, nachdem man das Skript eingegeben hat ja die Möglichkeit es "übersetzen" zu lassen. Dabei prüft der ja auch immer gleich die Syntax. Auf jeden Fall muckt Skripteditor schon beim übersetzen des Skripts, obwohl die Syntax bei 10.3 und 10.4 doch eigentlich die gleiche sein müsste. ???

Der obere Teil der Daten wäre wichtig gewesen. Beginnt mit "AXapplication" - "AXWindow" usw. bis hin zum "AXButton"

Wenn du das Skript im Skripteditor kompilieren (Button "Übersetzen") willst, welcher Teil wird dann markiert wenn der Fehler kommt? Und wie lautet der Fehler?
 
komisch

ich hab' jetzt nochmal zu kompilieren versucht und der fehler is weg *schulterzuck*
also vorher lag der fehler immer bei der "tell group 1"-Zeile, da hat er was von "wurde Zeilenende erwartet, aber ...(weiß nich mehr was) gefunden" gemeldet. ich versteh nich, wieso das vorher nicht ging, weil ich das eigentlich mehrmals auf fehler überprüft habe. Naja, morgen oder übermorgen werd ich's auf dem Mini ausprobieren und dann mal schauen. danke bis hier hin.

Schmittmann
 
Zurück
Oben Unten