2017-12-20 41 views
0

Gibt es eine Möglichkeit, benutzerdefinierte Symbole mit AppleScript-Display-Dialog und Benachrichtigungen zu verwenden?applescript display dialog mit benutzerdefiniertem Symbol

In der Apple Dokumentation sagt, dass es über das Dialoganzeige:

with icon (text | integer)
The resource name or ID of the icon to display.

with icon (stop | note | caution) The type of icon to show. You may specify one of the following constants:

  • stop (or 0): Shows a stop icon
  • note (or 1): Shows the application icon
  • caution (or 2): Shows a warning icon, badged with the application icon

with icon (alias | file) An alias or file specifier that specifies a .icns file.

So nähte es, wie Sie Ihre eigenen Symbole verwenden können, aber ich kann der folgende Code nicht zur Arbeit bekommen.

display dialog "Text" with icon "/Users/user/Desktop/asd.icns" 

Es ruft mir den folgenden Fehler: "Ressource nicht gefunden."

Ziel ist es, nicht einmal einen Display-Dialog, sondern stattdessen eine Display-Benachrichtigung zu verwenden.

Antwort

1

Zunächst können Sie kein benutzerdefiniertes Symbol mit display notification anzeigen. Der Grund ist, dass Benachrichtigungen stark mit einer Zielanwendung verknüpft sind. Da AppleScript-Skripts und -Applets keine Anwendungen in Bezug auf das Benachrichtigungsframework sind, bezieht sich die Benachrichtigung auf den current application, den AppleScript Runner.


Aber man kann mit display dialog

Die Linie

with icon (alias | file) An alias or file specifier that specifies a .icns file.

bedeutet, was es sagt, ein benutzerdefiniertes Symbol angezeigt werden: Der Parameter muss ein alias oder file Spezifizierer eher als ein POSIX oder HFS-String Pfad.


Entweder

display dialog "Text" with icon alias ((path to desktop as text) & "asd.icns") 

oder

display dialog "Text" with icon file ((path to desktop as text) & "asd.icns") 

path to desktop as text stellt den HFS-Pfad auf den Desktop des aktuellen Benutzers:

"Macintosh HD:Users:user:Desktop:"

+0

das scheint nicht zu funktionieren. Und ich denke, es wird nicht mit Benachrichtigungen funktionieren. – WalterBeiter

+0

Es funktioniert und du hast recht, es funktioniert nur mit 'display dialog', aber nicht mit' display notification', da letzteres die AppleScript-Runner-Anwendung als Ziel verwendet und keinen 'icon'-Parameter bereitstellt. – vadian

Verwandte Themen