• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Wir haben den Frühjahrsputz beendet, Ihr auch? Welches Foto zu dem Thema hat Euch dann am Besten gefallen? Hier geht es lang zur Abstimmung --> Klick

Variablen

gwarth

Erdapfel
Registriert
07.01.07
Beiträge
2
Moin,

hier ist noch ein Problem, das ich habe: Erst soll der User über mein gebasteltes Interface ein File auswählen (der Pfad wird ja in selectedFile geschrieben). Sobald dann der User auf den Create-Stuff-Button drückt, soll irgendwas mit dem File passieren. Der Punkt ist, dass das Script dann nichts mehr mit der Variablen selectedFile anfangen kann...

Code:
on clicked theObject
    if the name of theObject is equal to "btnCreateStuff" then
        display dialog selectedFile
    else if the name of theObject is equal to "btnSelectFile" then
        set selectedFile to choose file without invisibles
[...]
Noch ein Problem, was in die gleiche Richtung gehen könnte ist, dass ich einige Variablen global definieren will, damit ich dem Handler am Ende nicht 12 Parameter mitgeben muss. Variablen in Handlern sind aber bei mir immer Handler-eigene Variablen – wie macht man aus ihnen globale?


Vielen Dank schonmal!
Georg
 

hubionmac

Tydemans Early Worcester
Registriert
25.06.04
Beiträge
393
eine Variable definierst Du als gobal indem du sie am Anfang als solche definierst

Code:
[color=#2900FF][b]global[/b][/color] [color=#3F7F00]blafasel[/color]
[color=#7F007F]
[/color][color=#7F007F]
[/color][color=#3F7F00]a[/color]()
[color=#3F7F00]b[/color]()

[color=#2900FF][b]on[/b][/color] [color=#3F7F00]a[/color]()
[color=#2900FF][b]set[/b][/color] [color=#3F7F00]blafasel[/color] [color=#2900FF][b]to[/b][/color] "Blafasel"
[color=#2900FF][b]end[/b][/color] [color=#3F7F00]a[/color]

[color=#2900FF][b]on[/b][/color] [color=#3F7F00]b[/color]()
[color=#0000FF]display dialog[/color] [color=#3F7F00]blafasel[/color]
[color=#2900FF][b]end[/b][/color] [color=#3F7F00]b[/color]
 

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Hallo,

"global" hilft Dir da nicht weiter.
Die Variable lebt nur so lange, wie die Funktion läuft.

Um eine Variable permanent zu speichern benötigst Du "property"


Code:
property meineDatei : missing value

-- zuweisen
set meineDatei to "Meine Datei"

-- funktion
my blubb()

on blubb()
    display alert "Blubb" message meineDatei
end blubb

Beachte, dass Du sie auch wieder leeren mußt um Fehler zu vermeiden!
Der Wert steht Dir so lange zur Verfügung, wie das Programm geöffnet ist.

Viele Grüße