Satimage 戻る| 次へ
gotchasに原稿を書きます。
ホームページ > 情報センター > Onlineドキュメンテーション >オートメーション環境 > Scripting Smile > Scripting gotchas ツですか?/長さ>
目次
得るか、または得ません。 最初に戻る
てください。多くの場合、動詞は暗黙です。 例えば、2つの次の線が同等です。
窓1の領域にxを設定してください。
xを設定します。(窓1の領域を得ます)
ここに、 xは参照(しかしむしろ整数のリストに)に設定されないで、Applescriptはそれとなく 窓1の領域を評価します。 しかし、多くの事情では、Applescriptがあなたとしての力が予想して、あなたが 評価を強制しなければならない参照を評価しない、動詞を てください。

親指の規則: あなたが セットを表現に適用することができるなら、最もたぶん、表現が でない、それは 参照です。 申し込んでください。値を得 始めてください。

  • コマンドのパラメタとしての参照
    窓1の大文字している名前-- 誤り
    ここに、 大文字はストリングではなく、参照を受け取ります。 Scripting Additionのどんなコマンドのようにも、 大文字はSmileの物について言及する参照を決議することができません。 あなたはストリングを送る前の評価を大文字させるために明らかに コマンドを呼ばなければなりません:
    大文字(窓1の名前を得ます)
    Smileは以下のように入れ子にされた参照を評価しないでしょう。
    名前: 窓2の名前への窓1のセット所有地 --何もしません(;_;)
    あなたは物思いにふけります。使用は以下を ます。
    窓1の特性に以下を命名する(窓2の名前を得る)ように設定してください --
  • 厄介な参照
    窓1の領域の項目1にxを設定してください--、 誤り(;_;)
    線が暗黙の矛盾を含んでいるので、この線は失敗するでしょう。 本当に、あなたは窓1の領域の複雑な参照商品1をSmileに渡しています、あなたが本当に欲しいものがSmileが窓1の領域を返して、AppleScriptに線の項目1一部分を扱わせるのをさせている間。
    項目1へのxを設定する、(窓1)の領域を得てください--
    時々、Applescript自身は参照を受け入れません。
    中にwがある状態で、繰り返してください。(あらゆる窓)
    終わりの反復
    -- 誤り

    中にwがある状態で、繰り返してください。(あらゆる窓を手に入れます)
    終わりの反復
    -- すべての権利
名前闘争 最初に戻る
どんなプログラミング言語のようにも、あなたは名前闘争を避けなければなりません。 どんなランタイムのときにもリンクしないとき、ほとんどの言語で、問題は起こります。 Smileの中のAppleScriptでは、あなたはいつ何時、新しい変数か新しい操作者と共に文脈を増大させることができます。 これは多くの利点といくつかの可能な闘争ももたらします。

現在Smileの文脈で定義されている変数のリストを見るには、以下が裏打ちするAppleScript端末に立候補してください:

文脈のあらゆる変数の名前
リストにおける最初の変数が始めるときSmileがインストールしたものである、リストの残りはあなたが以来AppleScriptインタプリタで定義したそれらの変数です。

同様に:

文脈のすべての操作者の名前
リストを返します。 初めに、リストでは、あなたは短い名前で2人の操作者を見つけることができます: ddmsgdd表示対話[…]の1つの標準の設定への近道です。 msgConsoleにパラメタを印刷します。 あなたがそれらの名前(特に msg)をもっている変数か操作者を定義すると、Smileは適切に働かないでしょう。
1へのddを設定してください --
msgを設定する、「こんにちは、世界的である、」、 --
操作者の中では、 ddmsgは局所的で壊れているだけでしょう。 AppleScript端末では、あなたがやめるまで、それらは全体のSmileのために壊されるでしょう。
インデックスは窓について言及します。 最初に戻る
  • 相次ぐ物を作成するとき、あなたは、彼らが価値を増すインデックスを仮定すると予想します。

    本当に、これはそうです。 例えば最初に作成されるAppleScript端末が(通常) Consoleであるので、 Consoleテキストウィンドウ1です。

    テキストウィンドウ1の名前
    ツ??i>--ツ?「コンソール」
    あなたは、逆の勘定を指定するのに負のインデックスを使用することができます。 例えば、新しい テキストウィンドウを作成してください、そして、次に、その窓で以下の線を動かしてください。
    テキストウィンドウ-1のテキスト
    ツ??i>--ツ?テキストの原本は1インチに窓を付けます。
    与えられた窓が テキストウィンドウ5であり、あなたが、より早く作成されたテキストウィンドウ(テキストウィンドウ14)の1つを削除するなら、あなたの窓は テキストウィンドウ4になります。

  • 他方では、 窓1が前部窓について言及するのは、一般的な習慣であって便利な習慣です。

    本当に、これはそうです: 窓1は前部窓について言及して、 窓2は直後などに窓について言及します。 ランクを支持するのに前部を使用することで窓について言及するには、(仮想)のクラス ウィンドウを使用してください。 例えば、あなたは新しい テキストウィンドウで以下を走らせることができます。

    窓1はテキストウィンドウ-1です。
    ツ??i>--ツ?悔悟
  • 窓の インデックスの特性は前部について入荷待ちの品に言及します。 したがって、 インデックスの特性を使用して、あなたは、それを後部に向かうか、または送るために窓を持って来ることができます。
    1〜-1に窓のインデックスを設定してください。
    -- 支持する前部窓を送ってください。

    2〜1に窓のインデックスを設定してください。
    -- 2つのfrontmostの窓を交換してください。
    他方では、(例えば) それには与えられたインデックスが 対話であるならあるのを意識してください、と 5が言って、これは、それが 対話5であることを含意しません。 それは 窓5です。 あなたは創造命令における、窓の インデックスを得ることができません。
戻る| 次へ
Copyrightツゥ2005パリ、Satimage