@drprime said in Лайфхаки BAS:
Добавлю так же полезную штуку - прогрессбар.
progress_maximum(100)
progress_value(10)
Выглядит это так

К сожалению прогресс бар виден только во вкладке "результаты", которую видят далеко не все пользователи. По этому я решил сделать прогресс бар в логе:

Функция рисует прогресс бар из таблицы с двумя колонками без рамки
progressbar = function(val,max){
var res = parseInt(val * 1000 / max )
if(val == 0) log_html('<table style="border-color:#000000" width="1000" cellspacing="0" cellpadding="4" border="0"><tr><td bgcolor="#F0FFF0"</td></tr></table>')
if(val >= max) log_html('<table style="border-color:#000000" width="1000" cellspacing="0" cellpadding="4" border="0"><tr><td bgcolor="#32CD32"</td></tr></table>')
if(val != 0 && val < max)log_html('<table style="border-color:#000000" width="1000" cellspacing="0" cellpadding="4" border="0"><tr><td bgcolor="#32CD32" width="' + res + '"></td><td bgcolor="#F0FFF0" ></td></tr></table>')
}
Думаю описывать, что такое val и max в этой функции излишне :D
Использовать необходимо вместе с действием "Очистить лог", я специально не стал добавлять очистку лога в саму функцию, на случай если помимо прогресс бара нужно что то вывести в лог.
Так выглядит лог без чистки:

html код таблицы лежит в открытом виде, так что изменить длину, цвет, или добавить текст не составит труда. Если этот прогресс бар зайдёт, добавлю дополнительную функцию настройки внешнего вида.
Вот тестовый скрипт
Ещё вариант с установкой цвета:
progressbar = function(val,max,color){
var res = parseInt(val * 1000 / max )
if(val == 0) log_html('<table style="border-color:#000000" width="1000" cellspacing="0" cellpadding="4" border="0"><tr><td bgcolor="#F0FFF0"</td></tr></table>')
if(val >= max) log_html('<table style="border-color:#000000" width="1000" cellspacing="0" cellpadding="4" border="0"><tr><td bgcolor="' + color + '"</td></tr></table>')
if(val != 0 && val < max)log_html('<table style="border-color:#000000" width="1000" cellspacing="0" cellpadding="4" border="0"><tr><td bgcolor="' + color + '" width="' + res + '"></td><td bgcolor="#F0FFF0" ></td></tr></table>')
}
Пример использования
progressbar(35,100,"#00BFFF")

С глобальными переменными (или объектом в глобальной переменной) можно установить прогресс бар на несколько потоков:
