PDA

Показать полную графическую версию : Функцией Return и циклы


Cem
14-02-2014, 01:45
Доброго времени суток! Помогите, пожалуйста новичку разобраться с функцией Return и циклами.
Задача: Есть, например, текстовый документ. Проверяем содержит ли этот документ заданную строку ("Здесь есть текст"). Если содержит, то выполняем дальнейшее действие с документом (Сохранение, Печать, и т.д).
Теперь сам вопрос: Если при первой проверке не был найден искомый текст, как заставить скрипт повторять проверку до нахождения заданного текста?

$text = WinGetText("Новый текстовый документ (2).txt", "")
If StringInStr($text, "Здесь есть текст", 1) Then ; Проверяем содержит ли этот документ заданную строку
MsgBox(0, "Блокнот", "Текст есть") ; Да - содержит
...
Else
;MsgBox(0, "Блокнот", "Текста нет")
Return 0 ; Что-то мне подсказывает, что это работает не так
EndIf


По возможности, объясните, как это можно сделать с помощью Do.. Until. Спасибо!

Cem
18-02-2014, 12:57
Почитал и разобрался. Работает это вроде так.

$pust_stroka = "" ; Присваиваем этом переменной значение пустой строки
Do
$text = WinGetText("Новый текстовый документ (2).txt", "") ; Второй переменной присваиваем значение текста из окна.
Sleep(1000) ; Время ожидания до следующей проверки
Until $text > $pust_stroka ; Если условие выполнилось, то
MsgBox(0, "Блокнот", "Текст есть") ; Выдаётся сообщение "Текст есть"

А функция "Return", оказывается делает совершенно другие вещи.

Cem
10-08-2014, 20:25
Просьба удалить эту тему за отсутствием информативности и за ненадобностью.
Спасибо!




© OSzone.net 2001-2012