[AppleScript] ボタンがアクティブか否かを判定して、アクティブになるまで待機

ai
おはようございます。
「藍(あい)」です。

ボタンが押せる状態になっているか否かを判定して、押せない状態の間は処理を進めずに、押せる状態になったら処理を進めます。

処理を進めた先にボタンを押すようにしておけば、ボタンも押せます。

状態遷移まで「delay」で待機する方法もありますが、その方法だと状態の遷移と同期していないため無駄に時間を待ったり、早まって空振りしたりするので、こちらの方法をお勧めします。

ボタンがアクティブか否かを判定して、アクティブになるまで待機

-- ボタンがアクティブか否かを判定して、アクティブになるまで待機
        set BtnEnabled to false
        repeat
            -- button 1 を任意のターゲットに変更
            set BtnEnabled to (enabled of button 1)
            delay 0.5
            if BtnEnabled = true then
                exit repeat
            end if
        end repeat
        

説明

上記の処理を任意のアプリケーションに対して行ってください。

「set BtnEnabled to false」で判定用の変数「BtnEnabled」を「false」で初期化しています。

「repeat ~ end repeat」で中の処理を延々と繰り返します。

「set BtnEnabled to (enabled of button 1)」で変数「BtnEnabled」に確認対象「button 1」の状態を取得して格納しています。

ちなみに「button 1」は任意の確認対象に変更して構いません。

「delay 0.5」でこの処理を0.5秒ごとに繰り返しています。

「if ~ end if」がこの無限ループの唯一の出口です。

「BtnEnabled = true then」で変数「BtnEnabled」が「true」になったら、ここでは確認対象「button 1」がアクティブになったら「exit repeat」でループを抜けて次の処理に進みます。

この記事を書いた人

葉月 藍(はづき あい)

散歩とひなたぼっこが好きです。
自然の美しさや季節の移り変わりを感じながら、のんびりとした時間を過ごすのが日々の楽しみになっています。
日々流れていく世の中の出来事も、みなさんと一緒に知っていけたら嬉しいです。

葉月 藍(はづき あい)をフォローする
Xアカウントのご案内
「ニュースを身近に感じると、日常の見え方も変わってくる」

葉月 藍(はづき あい)のXアカウント(@usefulinfospot)では、本ブログで取り上げたおすすめ記事や、日々チェックしたいニュースを投稿しています。 あなたの「知りたい」を広げるきっかけとして、ぜひお気軽にフォローしてもらえると嬉しいです!

AppleSript
シェアする
タイトルとURLをコピーしました