В общем как я понял у вас так:
1. Заверешение серии тестов по времени или по достижении последнего вопроса.
2. Заверешение теста по времени или по переходу к следующему вопросу.
Тогда наверное где-то так:
В начале серии тестов инициализируете переменную:
Код:
StartTestSeriaTime := GetTickCount;
В начале каждого теста инициализируете переменную:
Код:
StartTestTime := GetTickCount;
в OnTimer вставляете код:
Код:
CurrentTime := GetTickCount;
if CurrentTime - StartTestSeriaTime > MaxTestSeriaTime
then ShowMessage('Отведенное время на серию тестов истекло');
if CurrentTime - StartTestTime > MaxTestTime
then ShowMessage('Отведенное время на тест истекло');