Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
лучше бы ты логику работы скрипта описал, так непонятно что надо получить в итоге
Quote (Lab-service)
setvar "[clipboard]"
это зачем? этой командой ты присваиваешь значение в буфер (причем пустое), а тебе читать надо. переменную Clipboard определять ненадо, почитай что такое глобальные переменные. Они уже существуют в проекте.
Далее, непонятно зачем (исходя из твоего примера) при одинаковом значении буфера поочередно присваивать в [text] разные увеличивающиеся значения? К чему это тебе? А если хочешь каждые 200мс проверять буфер, то для этого не надо городить всю эту чушь, достаточно воспользоваться обьектом Таймер, прописать там скрипт и "зарядить" его на 200мс или сколько тебе надо, а наращивать [text] нужно в цикле. А переть напролом, перебирая все 1000 вариантов по очереди да еще с задержкой - прямая дорога к зависанию компа нафиг, тебе же уже говорили.
Я конечно не знаком с синтаксисом нб, но мне так кажется что то что ты написал сплошная галиматья Входя в скрипт, переменная "[clipboard]" имеет у тебя некое значение, скрипт проверяет только два "off" и "11pin". Возьмем первый фрагмент
если у тебя значение переменной "[clipboard]" не равно "off" то скрипт попадает в вечный цикл. если равно... брррр то попадает в такой же но в следующем куске. На сколь мне известно, нб не является многопоточным. как оно у тебя работает не знаю. Я так понял, что в зависимости от значения "[clipboard]" ты должен установить "[text]". Итого, как все должно быть, 1 получить из буфера обмена значение, 2 в зависимости от полученого значения установить переменную "[text]", выдержать паузу и все повторить с начала. (как обозначается конец if в нб не знаю, обозначу как end)
Code
if "[clipboard]" = "off" setvar "[text]" = "0" end if "[clipboard]" = "1pin" setvar "[text]" = "10" end
и так далее И вообще, ты не тыкай всякой корявости, а человеческим языком опиши че ты хочеш, ибо ловить алгоритм в корявом скрипте неблагодарное дело
if "[clipboard]" = "1pin" setvar "[text]" = "10" end
надо,что-б если опять сдшзеищфкв=11пин,то уже не десять а 20,и так далее до 1000
Добавлено (24 Август 2010, 09:23) ---------------------------------------------
Quote (Alex3A)
На сколь мне известно, нб не является многопоточным. как оно у тебя работает не знаю.
Quote (Alex3A)
бейся головой об стену,пока ненайдёшь где напартачил
Работает отлично,головой непридёться биться об стену
Quote (DEMBEL)
Далее, непонятно зачем (исходя из твоего примера) при одинаковом значении буфера поочередно присваивать в [text] разные увеличивающиеся значения?
Когда первый раз перемыкаешь пин,пишет типа внесено 10 рублей,ещё раз перемыкаешь,уже 20 и т.д
Quote (Lab-service)
то что ты написал сплошная галиматья
Ну дык я и прошу помочь
Добавлено (24 Август 2010, 09:29) ---------------------------------------------
Quote (Alex3A)
Да ты гониш Это ж надо так нахомутать, лечись срочно Всегда, самого паганого компа, даже с озу в 16к, хватало на такие бредни, ты че там рекурсию сварганил :D
Мда... Похоже мне несветит стать настоящим програмером
Когда первый раз перемыкаешь пин,пишет типа внесено 10 рублей,ещё раз перемыкаешь,уже 20 и т.д
ну вот теперь понятнее... только тебе не кажется, что переменную [Clipboard] нужно очищать после перемыкания, иначе когда пин не перемкнуть - содержимое буфера-то будет показывать что его перемкнули. Короче на, изучай эти жалкие три строчки кода, которые ты должен был бы написать.
да, таймер будет работать вечно, пока запущено приложение. чтобы управлять им вручную в условиях, нужно поставить галочку Wait for TimerStart action в свойствах, и использовать команды TimerStart "Timer1"/TimerStop "Timer1" в зависимости от других переменных (количества денег и пр.). Команду на старт можно давать при старте проекта или страницы (см. соотв. вкладки и св-ва проекта), и прописать ему там в скрипте останов в условиях при достижении [text]=1000 Как задавать вопросы
Сама-то проблема заключаеться в том,что я ещё и незнаю как сделать,что-б типа если сумма равна той,сколько стоит продукт,тогда переходила на страницу. А вот тут и появляеться ещё одна. Нужно чтоб сначала всё-таки написало,сколько всего внесено. Ну допустип,стоит 20 рублей,мы использовали 50 рублёвую купюру,значит надо,ччто-б показало сколько было всего внесено,а если мы использовали две десятки ? Тогда уже неполучаеться
Добавлено (24 Август 2010, 11:39) ---------------------------------------------
Quote (Lab-service)
А вот тут и появляеться ещё одна.
проблема
Добавлено (24 Август 2010, 11:40) --------------------------------------------- Вобщем ладно,спасибо буду думать дальше,а я сёдня вообще ещё неложился спать,всё думал.
так, короче, опиши поподробнее все варианты и условия возникновения событий, которые нужно обработать в программе, и что получить в итоге. так по кусочкам задачу не решить. Как задавать вопросы
блин,я незнаю как это обьяснить ну вот товар стоит 20руб,значит ты будешь ложить две десятки,и если сумма,которую ты внёс, равна стоимости товара,тогда появляеться кнопка,позволяющая его оплатит. А вот если мы захотели не десятками ложить а кинули полтос?
Добавлено (24 Август 2010, 11:56) ---------------------------------------------
Quote (Lab-service)
и если сумма,которую ты внёс, равна стоимости товара,тогда появляеться кнопка,позволяющая его оплатит.
ты мне не про товар обьясняй, а про то, конкретно когда и сколько раз должно у тебя там щелкнуть, чтобы можно было составить скрипт. что будет если кинуть 10, 50, 100 и т.д. и что и как должно обрабатываться в программе. Как задавать вопросы
вообще, в автоматах если ты заметил, период приема денег ограничен рамками, соответственно запускать и останавливать мониторинг буфера нужно только по требованию, когда начинают и перестают сувать Как задавать вопросы
еще и сдача дается? ну посчитаем. ты толком обьясняй условия, которые нужно создать в программе, чтобы общаться с автоматом через буфер. что там и сколько должно перемкнуться чтобы выдать положенную сдачу. Как задавать вопросы
у меня купюрник хреновый,старый. им нельзя упровлять програмно,он всегда может принимать деньги,даже если ты ничего из меню невыбрал. короче связь,односторонняя,только в комп.
а сдачу уже прога должна посчитать из того сколько внесли надо отнять то сколько стоит товар о сдажу сохранить в переменной
Добавлено (24 Август 2010, 12:06) ---------------------------------------------
Quote (Lab-service)
а если кинем ОДИН раз 100 рублей, чего перемкнется и сколько раз :'(
десять
Добавлено (24 Август 2010, 12:09) --------------------------------------------- обьясню ещё раз 10- перемкнёт 11 пин один раз 50-перемкнёт это-же 11 пин пять раз 100- перемкнёт 11 пин десять раз две 10-пермкнёт 11пин два раза а прога должна уметь посчитать
Добавлено (24 Август 2010, 12:22) --------------------------------------------- блин,ты непонимаешь того,про что я тебе говорю,а я незнаю как обьяснить довай так,сделай в этом-же проекте другую страницу,на которую переведёт когда деньги внесены,и посмотри,тогда я думаю поймёшь в чём проблема
вот при каком условии должно перевести на следующую страницу? если внесённые деньги равны,необходимой для оплаты этой услуги? или если их внесено больше чем нужно для оплаты?
вот при каком условии должно перевести на следующую страницу?
а посчитать в необуке переменные между собой и сравнить их в условиях - это что, дело архинерешаемое? Ты уже сам высказал готовые условия. Как задавать вопросы
Lab-service, Есть такая фигня, называется алгоритм, набор правил и условий описывающий необходимые действия. С него надо и начинать, и только тогда когда ты сам убедишся что твой алгоритм-сценарий описан тобою правильно, приступать к его детализации и переводу на язык програмирования. Я обычно не разделяю эти процессы, держа все в уме, но когда мозга начинает заворачиватся, беру ручку и на бумаге описываю что мне надо, затем сравниваю с тем что у меня в итоге получилось, и тогда видны все ошибки. Алгоритм описывается простым человеческим языком. Начинать надо с описания твоей нужды, какие есть у тебя входные данные и что ты хочеш, в результате их обработки получить. Что с ними надо делать что бы получить искомый результат. Так что первый этап работы с програмированием ни как не связан, если из имеющихся первичных данных невозможно получить искомый результат, ни один язык програмирования тебе не поможет
Алгоритм описывается простым человеческим языком. Начинать надо с описания твоей нужды, какие есть у тебя входные данные и что ты хочеш, в результате их обработки получить.
Спасибо Ты прям как программа "Совет дня"
Добавлено (24 Август 2010, 20:28) ---------------------------------------------