Skip to main content
Known Participant
March 31, 2021
Answered

チェックボックス制御をずっとワークスペースに表示したい

  • March 31, 2021
  • 1 reply
  • 501 views

AE2020(バージョン17.51)使用です。
1つのチェックボックス制御でプロジェクト全体で特定の素材が入れ替えられるようにコンポを組みました。
チェックボックスをずっとワークスペース内に表示しておきたくてエフェクトコントロールを増やして端に設置、元のコンポジションが閉じてしまうとエフェクトも閉じてしまうのでそのコンポジションのタイムラインパネルも端に設置しました。下の画像のような形です。
しかしプロジェクトを開きなおすと二つ目のエフェクトコントロール自体が消えてしまいます。
いつでもチェックボックスに手が伸ばせるようなやり方はありますでしょうか?できるならチェックボックス制御をずっとワークスペースに表示したいです。

This topic has been closed for replies.
Correct answer Mukaida

スクリプトを作って切り替える方法になると思います。


下記のスクリプトを実行すると、スイッチが切り替わります。
1行目のitemの数値はコンポジションの番号とレイヤーの名称を変更してください。
コンポジションを作成した順番が番号になるので、エラーが出る場合は数値を変えて試してください。

var myEffect = app.project.item(1).layer("暗いグレー 平面 1").effect("チェックボックス制御")("チェックボックス");
var myCheck = myEffect.value;
if (myCheck == true){
myCheck = myEffect.setValue(false);
}else{
myCheck = myEffect.setValue(true);
}


スクリプトでボタンとパネルも作れば、常時表示させることもできます。

1 reply

MukaidaCommunity ExpertCorrect answer
Community Expert
April 1, 2021

スクリプトを作って切り替える方法になると思います。


下記のスクリプトを実行すると、スイッチが切り替わります。
1行目のitemの数値はコンポジションの番号とレイヤーの名称を変更してください。
コンポジションを作成した順番が番号になるので、エラーが出る場合は数値を変えて試してください。

var myEffect = app.project.item(1).layer("暗いグレー 平面 1").effect("チェックボックス制御")("チェックボックス");
var myCheck = myEffect.value;
if (myCheck == true){
myCheck = myEffect.setValue(false);
}else{
myCheck = myEffect.setValue(true);
}


スクリプトでボタンとパネルも作れば、常時表示させることもできます。

TsugumiSAuthor
Known Participant
April 1, 2021

すみません、スクリプトの実行の仕方が分からなくて…あと他の人が私のデータを触ったときにすぐ変更できるようにしておきたいのでスクリプトはちょっと考えていないのです。(エフェクトのチェックボックス制御であれば「このコンポジションを開いてこのレイヤーのチェックボックスを使ってください」とお願いできるので)

でも記述まで教えて頂き参考になりました。ありがとうございます!

Community Expert
April 1, 2021

参考のため記しておきますが、
このスクリプトは既に適用しているチェックボックスのオン/オフの切替えをするだけなので、プロジェクトには影響ありません。
スクリプトを実行する度に切り替わります。

 

スクリプトは、コピーしてテキストエディターにペーストして拡張子.jsxを付けて保存します。
(テキストエディターは、メモ帳・Adobe ExtendScript Toolkit・Visual Studio Codeなど)
実行は、ファイルメニューからできます。
2回目からはショートカットキーで実行が可能です。

 

今回は、名称の変更が必要なので、スクリプトの編集にはAdobe ExtendScript Toolkitを使うとESTKからAfter Effectsを直接実行させることができるので、バグを修正しながら確認できます。