Applescript Fortschrittsbalken funktioniert nicht

Habe ich einen richtig funktionierenden progress bar-code, aber wenn ich mischen Sie es mit einigen Aufgaben, wie das kopieren von Dateien hier, es gibt mir Fehler und nicht der Schrittweite Stoppt es nach der ersten Kopie, keine Idee, wo das problem ist?

Hier ist der code:

tell application "Finder"
    set selected_items to selection
    set fileCount to length of selected_items
end tell

set progress total steps to fileCount
set progress completed steps to 0
set progress description to "Processing Images..."
set progress additional description to "Preparing to process."
set a to 1

tell application "Finder"
    set theFolder to POSIX file "/Users/graphics/Desktop/1"
    repeat with x in selected_items
        set progress additional description to "Processing image " & a & " of " & fileCount
        duplicate x to theFolder
        set progress completed steps to a + 1
        set a to a + 1
    end repeat
end tell
  • 1. Haben Sie speichern Sie es als Applet? 2. Vielleicht Finder-Auswahl nur enthält Ihr Skript nach anklicken? Eine display dialog x as string bevor duplizieren, um sicher zu sein 3. Erzählen Sie uns mehr über die Fehler, die Sie bekam.
  • Ich speicherte es als Anwendung, die es einfach hält, nachdem die erste, das ist das ganze Skript, das Sie ausführen könnte, und sehen die Fehler, wenn Sie wollen
  • Wie startet man das script? Haben Sie versucht, Punkt 2 meiner Antwort?
  • Ich führe das Skript aus dem Skript-editor, und ich bin sicher, dass die finder-Auswahl enthalten Dateien, die nicht das Skript, Tat Sie versuchen, diesen code auf Ihrem Rechner?
  • Ok, dann bitte starten Sie die Anwendung durch einen Doppelklick auf Sie! Aber bevor Sie hinzufügen eine activate nach Ihrem ersten tell application Finder
  • Ich schon hab das auch vor, aber es hat nicht funktioniert, haben Sie versucht die code?

InformationsquelleAutor Kamel Labiad | 2016-07-30



One Reply
  1. 3

    Hier ist das Skript, bitte Lesen Sie die Hinweise:

    tell application "Finder"
        set selected_items to selection
        set fileCount to count of selected_items
    end tell
    
    set progress total steps to fileCount
    set progress completed steps to 0
    set progress description to "Processing Images..."
    set progress additional description to "Preparing to process."
    set a to 1
    
    repeat with x in selected_items
        set progress additional description to "Processing image " & a & " of " & fileCount
        tell application "Finder"
            set theFolder to (path to desktop folder as string) & "1:"
            duplicate x to theFolder with replacing
        end tell
        tell me to set progress completed steps to a + 1
        set a to a + 1
    end repeat
    

    Zog ich die set progress... Handler aus der tell application "Finder"-Block, da die Anwendung „Finder“ weiß nicht, über den Fortschrittsbalken, und korrigiert das Ziel-Ordner passt in jedes desktop-Ordner. Es funktioniert nun perfekt, wenn

    • Das Skript gespeichert ist als Applet
    • Das Applet gestartet wird über die Dock

    Dies ist, weil

    • Script-Editor kann nicht kümmern sich darum, dass der andere thread für die Aktualisierung der Fortschrittsanzeige bei der Ausführung im Script-Editor

    • Wenn du das Applet startest per Doppelklick innerhalb des Finder-das Applet selbst wird die Auswahl, gerade weil Sie auf es klicken! Starten Sie es aus dem dock löst dieses Problem!

    Spaß zu haben, Michael /Hamburg

    • Eigentlich ist der Ziel-Ordner ist nur ein Platzhalter, ich habe, um es zu ändern eh woanders und mein Ziel mit diesem Skript legen Sie es in einen service, so kann ich den Zugang mit der rechten Maustaste auf die ausgewählten Dateien, ich werde versuchen, Ihre Lösung
    • Ich war in der Lage, diese in eine app, haben einige Dinge in der Mail, und es nicht verlangen, mich zu öffnen, es aus dem dock. Ich habe einige Interaktionen mit dem Benutzer, der das Skript erfordert, stellt der Mail-app in den Fokus, so vielleicht das ist, warum. Mail erkennt nicht die Fortschrittsanzeige ähnlich wie Finder, so dass drop-out von Sagen Mail war wichtig, damit es funktioniert.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.