Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Остановить скрипт когда кончились строчки в блокноте
zzzzuy
сообщение 19.12.2018, 15:28
Сообщение #1


*

Registred
Сообщений: 6
Регистрация: 1.3.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.850



мой скрипт подсасывает значения из блокнота, когда в нем кончается информация, скрипт работает в "пустую"
Внимание, 2 вопроса!
1) как сделать так чтобы скрипт отключался когда в блокноте кончались строки
2) как сделать так чтобы скрипт сам удалял строки из блокнота которые уже "использовал"
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sutra
сообщение 19.12.2018, 16:49
Сообщение #2


*******

Adept
Сообщений: 923
Регистрация: 10.8.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.007



Считал строку, затем когда строка не нужна, посылаешь команды в блокнот нажатия клавиш Shift-End, Del и Del. Затем проверяешь вызовом findcolor по координатам первой строки, что там не пусто. Если пусто, останавливаешь скрипт, если нет, то всё сначала.


Поиск например так, найти в первой строке, хоть что-то отличающееся от фона:
Код
set #chk findcolor (0 8 20 12 1 1 (R(0-240) %chk)

Проверяешь #chk, если нуль, глуши скрипт.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 19.12.2018, 16:50
Сообщение #3


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27721
Пользователь №: 11.279



Цитата
атем проверяешь вызовом findcolor по координатам первой строки, что там не пусто.

Я бы так не делал. Точно так же копировать строку, как и обычно. Просто проверять на то, что она пустая.

Что вообще хотите реализовать? Есть подозрения, что мы сможем предложить более удобный вариант.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sutra
сообщение 19.12.2018, 17:03
Сообщение #4


*******

Adept
Сообщений: 923
Регистрация: 10.8.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.007



Только координату не с нуля делай, поторопился я, а то курсор может найти.

Цитата
Точно так же копировать строку, как и обычно

Можно и так.


Не подумал про блокнот, привычка делать так, чтобы искало по барабану где. Find определит 100% хоть в блокноте хоть в шопе, лишь бы захват работал.

Опять же, если встречаются пустые строки, финдом можно посмотреть не первую, а скажем плюс 2-3 строки вниз. А иначе надо копировать всё и смотреть уже пусто или нет.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 20.12.2018, 23:39
Сообщение #5


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26706
Пользователь №: 16.971
Возраст: 29



Цитата
1) как сделать так чтобы скрипт отключался когда в блокноте кончались строки

Код
set $path "C:\123.txt"    // путь к файлу
load_array %a $path  // загрузить содержимое файла в массив

for #i 1 size(%a)    // для всех строк из файла
    log %a[#i]       // вывести в лог строку (можно убрать)
    // тут нужные действия
end_for
end_script

Цитата
2) как сделать так чтобы скрипт сам удалял строки из блокнота которые уже "использовал"

Код
set $path "C:\123.txt"   // путь к файлу
load_array %a $path    // загрузить содержимое файла в массив

while size(%a) > 0   // пока не закончатся строки из файла
    log %a[1]       // вывести в лог строку  (можно убрать)
    // тут нужные действия
    delete_array %a -1   // удалить первую строку из массива
    save_array %a $path   // сохранить массив в файл
    wait 100
    load_array %a $path    // загрузить содержимое файла в массив
end_while
// файл будет пустой после завершения работы скрипта
end_script
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 23.4.2024, 11:08
Designed by Nickostyle