The routine loop does not finish のルーティンのループが終了しない

《実験1》という名前のRoutineを挿入し、《Sotsuron.xlsx》という表のデータをLoopさせています。このRoutineを、30秒間動かした後、終了して、次の《休憩》という名前のRoutineを動かしたいのですが、どうすれば良いですか?
codeのRoutine終了時タブに以下のコードを記入しています。
if t >= 30.0:
continueRoutine = False # ルーチン終了
text_trial.text = “” # テキストをクリア
text_trial.status = STARTED # テキストのステータスを再度STARTEDに設定
text_trial.setAutoDraw(True) # テキストを再表示

if event.getKeys(): # キー入力を監視
continueRoutine = False # ルーチン終了

A routine named “Experiment 1” is inserted and the data from the table “Sotsuron.xlsx” is looped. I want to run this Routine for 30 seconds, then end it and run the next Routine called “Break”. What should I do?
The following code is entered in the Routine end tab of code.

if t >= 30.0:
     continueRoutine = False # End routine
     text_trial.text = "" # clear text
     text_trial.status = STARTED # Set the text status to STARTED again
     text_trial.setAutoDraw(True) # Redraw text

if event.getKeys(): # Monitor keystrokes
     continueRoutine = False # End routine

continueRoutine = False does nothing in the End Routine tab. It needs to be in Each Frame (or Begin Routine when you don’t want the routine to start).

If you mean that you want to end the loop after 30 seconds, then that can be in End Routine, but the code is trials.finished = True (if your loop is called trials).

You can’t use text_trial.setAutoDraw(True) in End Routine if the routine contains the component called text_trial. You would need to use it in Begin Routine of the next routine instead.

continueRoutine = False では、「End Routine」タブでは何も行われません。これは各フレーム (またはルーチンを開始したくない場合はルーチンの開始) 内にある必要があります。

30 秒後にループを終了したい場合は、End Routine に指定できますが、コードは Trials.finished = True (ループの名前が Trials の場合) になります。

ルーチンに text_trial というコンポーネントが含まれている場合、ルーチンの終了で text_trial.setAutoDraw(True) を使用することはできません。代わりに、次のルーチンのルーチン開始で使用する必要があります。