Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 01.05.2005 - 18:51 Titel: Dialog-Standard: Text und Button als Antwort |
|
|
Problem:
Die dem OSX Script Editor beigefügten Standard-Dialoge sind nicht als mehrfache baugleiche Handler Strukturen durchdacht. Somit hat man damit Mühe, sobald aus mehreren, als Handler geführten Dialogen innerhalb des Skriptes die Resultate verwertet werden sollen und besonders auch dann wenn von extern aus dem Skript-Verlauf errechnete Varibalen-Werte in die Dialoge eingesetzt werden sollen . Hier schlage ich vor:
Ich glaube dass es jedem ernst meinenden Skripter so geht: man lernt, und damit wird das alte meist zum Irrtum von gestern, das neueste wäre dann der aktuelle Stand des Irrtums:
Ich habe versucht eine einzige Adresse betr. Dialog-Text-Ideen warm zu halten:(re-Edit 21.2.06)
http://www.fischer-bayern.de/phpBB2/viewtopic.php?t=1553 _________________ Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius
Zuletzt bearbeitet von spirigwi am 20.02.2006 - 19:30, insgesamt 11-mal bearbeitet |
|
Nach oben |
|
 |
spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 01.05.2005 - 19:09 Titel: |
|
|
Snow hab erbarmen!
muss noch auf OSX das Zeugs zurechtschustern und brauch dazu deine Forumseite
Darf ich das wenn das SNIPPET wie geölt läuft? _________________ Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 01.05.2005 - 19:39 Titel: |
|
|
spirigwi hat Folgendes geschrieben: |
Darf ich das wenn das SNIPPET wie geölt läuft? |
Das Skript scheitert an der Überprüfung, ob Smile auf der Platte ist. Das hatte ich dir aber bei einem anderen Snippet bereits mitgeteilt.
http://www.fischer-bayern.de/phpBB2/viewtopic.php?t=1118
Aber selbst wenn man die Prüfung so abändert, wie ich es dort vorgeschlagen hatte, scheitert das Skript an folgender Zeile:
if my SmileAufPlatte() is not {} then
Ich weiß nicht, wie du darauf kommst, dass im Falle, das Smile nicht auf der Platte ist, das Ergebnis eine leere Liste wäre.
Für diesen Fall muss der entsprechende Handler auch ein verwertbares Ergebnis liefern also z.B. so:
on SmileAufPlatte()
set theCrea to "VIZF" --Smile
tell application "Finder"
try
get application file id theCrea
on error errmsg
return false
end try
end tell
end SmileAufPlatte
Die entsprechende Wenn-Bedingung kannst du dann so anpassen:
if my SmileAufPlatte() is not false then
Natürlich kannst du auch den Handler im Fehlerfalle eine leere Liste liefern lassen, dann stimmt auch deine bisherige Bedingung.
Wenn es das Ziel deines Snippets ist, die Funktionalität des Skripteditors zu erweitern wäre es meiner Meinung nach sinnvoller, das Skript ebenso wie die bereits mitgelieferten Beispiele, im Kontextmenü des Skripteditors unterzubringen.
Damit wären dann auch die Überprüfungsroutinen für Smile und den Skripteditor überflüssig. Das Kontextmenü erreicht man schließlich nur, wenn man sich bereits in einem Fenster des Skripteditors befindet, womit bewiesen wäre, dass dieser auch auf der Festplatte vorhanden ist. _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 01.05.2005 - 20:10 Titel: |
|
|
Snow hat Folgendes geschrieben: | Damit wären dann auch die Überprüfungsroutinen für Smile und den Skripteditor überflüssig. Das Kontextmenü erreicht man schließlich nur, wenn man sich bereits in einem Fenster des Skripteditors befindet, womit bewiesen wäre, dass dieser auch auf der Festplatte vorhanden ist. |
Schon extrem happy dass du mir hilfst.
Die Unvollendung stammt daher dass das auf OS9 sauber läuft und schon lange.
Ich hatte damals natürlich noch nicht die SNIPPET-Sammlung von OSX-Editor, den du mit gezeigt hast. Dort fehlt aber eindeutig eine Systematik der Varaiblen-Namen.
Die Snippet-Idee ist also dieses mein Standardwerk das mir seit Jahren sehr nützlich angeschriebene AS-mit dialog liefert zu OS-beixen.
Erstes Problem ist also das Smile: auf OS9 geht das natürlich nur vernünftig mit Smile weil Editor überhaupt keine brauchbaren Instrumente hat insbesondere den Variablen-End-teil: Dia1 muss man in einem Schnurz ersetzten können mit Dia2 usw.Bei mir müsste ich nicht lange fragen da Smile drauf, wenn einer Smile nicht hat, kann der Editor ja nicht einmal neues File erzeugen, kann dort also nur Zwischenspeicher füllen für solch einen user. Daher muss ich unterscheiden können ob smile montiert. Die Frage nach Editor erübrigt sich, werde das noch rausholen. aber eben: Editor OSX lässt neue files machen, OS9 wieder nicht, wie soll man das wieder unterscheiden?
Das AS-menu(oder gehts ums Kontext-menu..bin zz blind im Editor-Fenster des forums, sorry) möchte ich wenigstmöglich brauchen wenns nicht nötig, hier wäre ein guter Tipp von dir, aber vegiss nicht Editor des OS9 hilft nicht viel..muss mal besser überlegen ob nicht doch.
Am einfachsten wäre natürlich ohne Wenn und aber auf Editor umzuschreiben und zu erlernen wie der neue files erzeugt: weiss du wie der AS-Befehl dazu heisst?
vielen dank für Hilfe
ich kipp dir hier mal das Ergebnis des AS wenns auf OS) gestartet ist hinein:(Ziel wäre ein Snippet das aus beiden Systemen das richtige macht)
Zitat: | -- ========für weitere: ersetze Dia1 mit Dia2 usw.======
property AusExt1Dia1 : ""
global Dia1, Bu1Dia1, Bu2Dia1, Bu3Dia1, TexAntwDia1, ButAntwDia1
-- ======================================================
set AusExt1Dia1 to "" --bei Bed.
my Dia1() activate --{TexAntwDia1 ButAntwDia1} Bu1Dia1 Bu2Dia1 Bu3Dia1
--ooooooooooooooooooooooooooooooooooooooooooooooooooooooo
on Dia1()
AusExt1Dia1 -- ev. einsetzen und ev dupl.-->propertys
-------------------------------------------
set AppDiaLeser to "Finder" --to Handlername...()
-------------------------------------------
set Titel1 to "Titel1"
set Titel2 to "Titel2"
set DisplTITEL to Titel1 & Titel2
-----------------------Tabu = Abbruch
set Bu1Dia1 to "Bu1Dia1"
set Bu2Dia1 to "Bu2Dia1"
set Bu3Dia1 to "Abbrechen" --Tabu = Abbruch
--
set DefAns to "DefAns"
set IcNr to 2 --0=>Hand--1=>Sprechblase2 =GelbesDreieck
-- grösser 2(ZB3) => OHNE!icon
set GivUp to 0 --20
--DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
tell application AppDiaLeser to ¬
set DsplDia ¬
to display dialog DisplTITEL ¬
default answer DefAns ¬
buttons {Bu1Dia1, Bu2Dia1, Bu3Dia1} ¬
default button Bu3Dia1 ¬
with icon IcNr ¬
giving up after GivUp --not! activate!-->Res=""
--DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
set TextButtAntw to {}
set TextButtAntw to ¬
{text returned, button returned} of DsplDia
set TexAntwDia1 to item 1 of TextButtAntw
set ButAntwDia1 to item 2 of TextButtAntw
--return TexAntwDia1--ButAntwDia1
end Dia1 |
_________________ Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius |
|
Nach oben |
|
 |
spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 01.05.2005 - 20:21 Titel: |
|
|
nächste brennende Frage also
wie schreibt man auf OSX-Editor:
make new script window ¬
with properties {name:"TextAlsAntwortDia1"} _________________ Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 01.05.2005 - 21:04 Titel: |
|
|
Willy, du schreibst hier in den OS X-Snippets. Also vergiss einfach OS 9.
Wenn sich ein Skript nicht ohne große Änderungen auf beiden Systemen ausführen lässt, ist es schneller und zuverlässiger, zwei getrennte Skript-Versionen zu erstellen, als nach einer kombinierten Möglichkeit zu suchen.
spirigwi hat Folgendes geschrieben: | nächste brennende Frage also
wie schreibt man auf OSX-Editor:
make new script window ¬
with properties {name:"TextAlsAntwortDia1"} |
Ich habe dazu eben ein eigenes Snippet gepostet. Dies war eigentlich mal der usrprüngliche Sinn der Snippets-Foren: Bestimmte Funktionen kurz und knapp zur Verfügung zu stellen. _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2002 phpBB Group Deutsche Übersetzung von phpBB.de
|
|
|