Войти
NeoBooker.ru
Добро пожаловать к нам в гости!
Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
  • Страница 1 из 1
  • 1
Модератор форума: Peter, DEMBEL, YURIY  
Не правильно прописано условие для кнопки
dianil0810Дата: Ср, 20 Ноября 2013, 23:29 | Сообщение # 1
Прохожий
Подскажите, пожалуйста, если мне необходимо создать тест и некоторые вопросы могут содержать несколько правильных ответов. Я для вариантов ответов создаю checkbox - ы, для кнопки "Продолжить" (после нажатия на нее, программа должна перейти на следующую страницу. Но если ответы не выбраны, то должна вывести сообщение) записала условие и выходит ошибка

If "[CheckBox1]" ">" ""OR"[CheckBox2]" ">" ""OR"[CheckBox3]" ">" ""OR"[CheckBox4]" ">" ""OR"[CheckBox5]" ">" ""
GotoNextPage
Else
AlertBox "Whoops" "Вы не ответили на предыдущий вопрос!!"
EndIf

Добавлено (20 Ноября 2013, 23:29)
---------------------------------------------
Каждый из CheckBox - один из вариантов ответа. Если их объединить в 1 группу [CheckBox], то при выборе одного из них, автоматически выбираются все

 
СообщениеПодскажите, пожалуйста, если мне необходимо создать тест и некоторые вопросы могут содержать несколько правильных ответов. Я для вариантов ответов создаю checkbox - ы, для кнопки "Продолжить" (после нажатия на нее, программа должна перейти на следующую страницу. Но если ответы не выбраны, то должна вывести сообщение) записала условие и выходит ошибка

If "[CheckBox1]" ">" ""OR"[CheckBox2]" ">" ""OR"[CheckBox3]" ">" ""OR"[CheckBox4]" ">" ""OR"[CheckBox5]" ">" ""
GotoNextPage
Else
AlertBox "Whoops" "Вы не ответили на предыдущий вопрос!!"
EndIf

Добавлено (20 Ноября 2013, 23:29)
---------------------------------------------
Каждый из CheckBox - один из вариантов ответа. Если их объединить в 1 группу [CheckBox], то при выборе одного из них, автоматически выбираются все


Автор - dianil0810
Дата добавления - 20 Ноября 2013 в 23:29
mishemДата: Чт, 21 Ноября 2013, 00:31 | Сообщение # 2
Эксперт форума
Во первых, в данном случае если ответ имеет одно правильное значение, то лучше наверно использовать радио группу. Тогда и проверка условия будет проще.
Например у радиокнопок три ответа "Да" "Нет" "Или". Будем считать что правильный ответ "Нет"
Тогда:

Код
If "[RadioGroup1]" "=" "Нет"
   Выполняется код
Else
   Алерт бох, ответ не правильный.
EndIf


Во вторых, если вы хотите в одной команде использовать сразу несколько условий, тогда нужно применять команду IfEx
Выглядеть это будет примерно так:

Код
IfEx "[CheckBox1] =[#34][#34] OR [CheckBox2] =[#34][#34] OR [CheckBox3] = [#34][#34] OR [CheckBox4] = [#34][#34] OR [CheckBox5] =[#34][#34]"
AlertBox "Whoops" "Вы не ответили на предыдущий вопрос!!"
Else
GotoNextPage
EndIf


Что означает если все переменные пустые, то флажок не установлен нигде.

Ну и в третьих лучше наверно начать с изучения Справки. ;)

А то выше выражение вообще не понятно как могло получится.
:)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
СообщениеВо первых, в данном случае если ответ имеет одно правильное значение, то лучше наверно использовать радио группу. Тогда и проверка условия будет проще.
Например у радиокнопок три ответа "Да" "Нет" "Или". Будем считать что правильный ответ "Нет"
Тогда:

Код
If "[RadioGroup1]" "=" "Нет"
   Выполняется код
Else
   Алерт бох, ответ не правильный.
EndIf


Во вторых, если вы хотите в одной команде использовать сразу несколько условий, тогда нужно применять команду IfEx
Выглядеть это будет примерно так:

Код
IfEx "[CheckBox1] =[#34][#34] OR [CheckBox2] =[#34][#34] OR [CheckBox3] = [#34][#34] OR [CheckBox4] = [#34][#34] OR [CheckBox5] =[#34][#34]"
AlertBox "Whoops" "Вы не ответили на предыдущий вопрос!!"
Else
GotoNextPage
EndIf


Что означает если все переменные пустые, то флажок не установлен нигде.

Ну и в третьих лучше наверно начать с изучения Справки. ;)

А то выше выражение вообще не понятно как могло получится.
:)

Автор - mishem
Дата добавления - 21 Ноября 2013 в 00:31
PeterДата: Чт, 21 Ноября 2013, 01:11 | Сообщение # 3
Админ NeoBook
Цитата mishem ()
Выглядеть это будет примерно так:

Код
IfEx "[CheckBox1] =[#34][#34] OR [CheckBox2] =[#34][#34]

Тут нужно сделать небольшое уточнение: данный код (для AlertBox) будет выполнен только при условии выбора сразу всех переключателей (CheckBox-ов).
Для того, чтобы сообщение выскакивало только в случае если вообще не выбран никакой вариант ответа (все переключатели не отмечены), оператор OR нужно заменить на AND.

А вообще, mishem прав: в случаях, когда нужно выбрать только одно из нескольких значений, обычно применяют радиокнопки, а переключатели (CheckBox-ы) применяют когда можно выбрать либо из двух (отмечен/не отмечен), либо сразу несколько вариантов, т.е.

Цитата dianil0810 ()
некоторые вопросы могут содержать несколько правильных ответов.


Цитата dianil0810 ()
Если их объединить в 1 группу [CheckBox], то при выборе одного из них, автоматически выбираются все

Можно и так, только не следует забывать, что в этом случае, когда снимается флажок с одного CheckBox-а, автоматически он снимается и со всех остальных.


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Цитата mishem ()
Выглядеть это будет примерно так:

Код
IfEx "[CheckBox1] =[#34][#34] OR [CheckBox2] =[#34][#34]

Тут нужно сделать небольшое уточнение: данный код (для AlertBox) будет выполнен только при условии выбора сразу всех переключателей (CheckBox-ов).
Для того, чтобы сообщение выскакивало только в случае если вообще не выбран никакой вариант ответа (все переключатели не отмечены), оператор OR нужно заменить на AND.

А вообще, mishem прав: в случаях, когда нужно выбрать только одно из нескольких значений, обычно применяют радиокнопки, а переключатели (CheckBox-ы) применяют когда можно выбрать либо из двух (отмечен/не отмечен), либо сразу несколько вариантов, т.е.

Цитата dianil0810 ()
некоторые вопросы могут содержать несколько правильных ответов.


Цитата dianil0810 ()
Если их объединить в 1 группу [CheckBox], то при выборе одного из них, автоматически выбираются все

Можно и так, только не следует забывать, что в этом случае, когда снимается флажок с одного CheckBox-а, автоматически он снимается и со всех остальных.

Автор - Peter
Дата добавления - 21 Ноября 2013 в 01:11
dianil0810Дата: Чт, 21 Ноября 2013, 07:53 | Сообщение # 4
Прохожий
а что значит [#34][#34]
 
Сообщениеа что значит [#34][#34]

Автор - dianil0810
Дата добавления - 21 Ноября 2013 в 07:53
dianil0810Дата: Чт, 21 Ноября 2013, 08:12 | Сообщение # 5
Прохожий
Записала так, как вы сказали. Всё получилось, спасибо!
У меня версия NeoBook 5 Professional незарегистрированная, тут справка на английском языке... воспользоваться ей поэтому не могу.

У меня еще вопрос по записи условия.
Я хочу подсчитать количество правильных ответов. Среди других ввожу условия
If "[CheckBox1]" "=" "логин;" AND "[CheckBox4]" "="пароль;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
If "[CheckBox6]" "=" "фотографию, либо изображение, сохраненное на Вашем компьютере;"AND "[CheckBox7]" "="снимок веб-камеры;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
EndIf
то программа не подсчитывает ни правильные ответы ни верные, в этих CheckBoх. Опять в коде что-то не так
Прикрепления: 3748139.7z (7.7 Kb)
 
СообщениеЗаписала так, как вы сказали. Всё получилось, спасибо!
У меня версия NeoBook 5 Professional незарегистрированная, тут справка на английском языке... воспользоваться ей поэтому не могу.

У меня еще вопрос по записи условия.
Я хочу подсчитать количество правильных ответов. Среди других ввожу условия
If "[CheckBox1]" "=" "логин;" AND "[CheckBox4]" "="пароль;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
If "[CheckBox6]" "=" "фотографию, либо изображение, сохраненное на Вашем компьютере;"AND "[CheckBox7]" "="снимок веб-камеры;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
EndIf
то программа не подсчитывает ни правильные ответы ни верные, в этих CheckBoх. Опять в коде что-то не так

Автор - dianil0810
Дата добавления - 21 Ноября 2013 в 08:12
mishemДата: Чт, 21 Ноября 2013, 08:35 | Сообщение # 6
Эксперт форума
Цитата dianil0810 ()
тут справка на английском языке.

У меня в подписи ссылка как раз на русскую справку. ;)

:)
Цитата dianil0810 ()
а что значит [#34][#34]

Это спецсимволы, пробел так можно обозночать. ( "" )
Почему и говорю, что справку нужно почитать. Там и о символах, и о переменных, и каждая команда описана. Кидаете с заменой файл справки в НБ, и при нажати в любом диалоговом окне "Справка" для вас будет она открываться в нужном месте.

If "[CheckBox1]" "=" "логин;" AND "[CheckBox4]" "="пароль;"

Здесь не верно записано условие. Кликните в окне по этой команде еще раз, и окно откроется с пустыми полями. НБ не может этого прочитать и понять.

Красным выделено то, чему здесь не место.
Синим, это начало условия и название команды.
Если вы замените If на IfEx это будет уже другая команда , в которой можно подставлять AND или OR

Тоесть эта команда должна выглядеть примерно так:

IfEx "[CheckBox1]=логин; AND [CheckBox4]=пароль;"

Красным выделена одна строка в которой не должно присутствовать "
Кавычки для НБ дают понять начало и конец значения.

Примерно как в математике скобки (здесь что то) (здесь еще что то)
Короче вам легче прочитать и поразбирать для начала примеры.
Понять что ттакое условие и циклы. Да и не только это. :)

У справки хороший перевод и все доступно понятно, ну если только за исключением каких нибудь тонкостей.


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Цитата dianil0810 ()
тут справка на английском языке.

У меня в подписи ссылка как раз на русскую справку. ;)

:)
Цитата dianil0810 ()
а что значит [#34][#34]

Это спецсимволы, пробел так можно обозночать. ( "" )
Почему и говорю, что справку нужно почитать. Там и о символах, и о переменных, и каждая команда описана. Кидаете с заменой файл справки в НБ, и при нажати в любом диалоговом окне "Справка" для вас будет она открываться в нужном месте.

If "[CheckBox1]" "=" "логин;" AND "[CheckBox4]" "="пароль;"

Здесь не верно записано условие. Кликните в окне по этой команде еще раз, и окно откроется с пустыми полями. НБ не может этого прочитать и понять.

Красным выделено то, чему здесь не место.
Синим, это начало условия и название команды.
Если вы замените If на IfEx это будет уже другая команда , в которой можно подставлять AND или OR

Тоесть эта команда должна выглядеть примерно так:

IfEx "[CheckBox1]=логин; AND [CheckBox4]=пароль;"

Красным выделена одна строка в которой не должно присутствовать "
Кавычки для НБ дают понять начало и конец значения.

Примерно как в математике скобки (здесь что то) (здесь еще что то)
Короче вам легче прочитать и поразбирать для начала примеры.
Понять что ттакое условие и циклы. Да и не только это. :)

У справки хороший перевод и все доступно понятно, ну если только за исключением каких нибудь тонкостей.

Автор - mishem
Дата добавления - 21 Ноября 2013 в 08:35
dianil0810Дата: Чт, 21 Ноября 2013, 08:58 | Сообщение # 7
Прохожий
Спасибо за справку. Изменила код на:
SetVar "[Right]" "0"
SetVar "[Wrong]" "0"
If "[RadioGroup9]" "=" "общаться в режиме реального времени;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
EndIf
If "[RadioGroup10]" "=" "загрузка;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
If "[RadioGroup11]=[#34]навести курсор на имя файла и щелкнуть два раза левой кнопкой мыши;[#34]"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
IfEx "[CheckBox1]=логин; AND [CheckBox4]=пароль;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
If "[CheckBox6]=[#34]фотографию, либо изображение, сохраненное на Вашем компьютере;[#34] AND [CheckBox7]=[#34]снимок веб-камеры;[#34]"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
EndIf

Теперь вообще не выдает результаты
 
СообщениеСпасибо за справку. Изменила код на:
SetVar "[Right]" "0"
SetVar "[Wrong]" "0"
If "[RadioGroup9]" "=" "общаться в режиме реального времени;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
EndIf
If "[RadioGroup10]" "=" "загрузка;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
If "[RadioGroup11]=[#34]навести курсор на имя файла и щелкнуть два раза левой кнопкой мыши;[#34]"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
IfEx "[CheckBox1]=логин; AND [CheckBox4]=пароль;"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
If "[CheckBox6]=[#34]фотографию, либо изображение, сохраненное на Вашем компьютере;[#34] AND [CheckBox7]=[#34]снимок веб-камеры;[#34]"
SetVar "[Right]" "[Right]+1"
Else
SetVar "[Wrong]" "[Wrong]+1"
EndIf

Теперь вообще не выдает результаты

Автор - dianil0810
Дата добавления - 21 Ноября 2013 в 08:58
mishemДата: Чт, 21 Ноября 2013, 12:02 | Сообщение # 8
Эксперт форума
В НБ есть еще такая вещь как отладчик.
Запускаете проект, в отладчике нажимаете паузу и пошагово просматриваете как работает код.

Первую ошибку НБ сразу выдает.
If "[RadioGroup11]=[#34]навести курсор на имя файла и щелкнуть два раза левой кнопкой мыши;[#34]"

Здесь нет кавычек после [RadioGroup11], перед и после знака равно, и перед [#34].

Вторая ошибка, нет Endif после этого условия. Ну и дальше тоже смотрю Endif отсутствует.

Вы научитесь код писать сначала с окнами мастеров. А после уже можно будет и в ручную исправлять, когда сумеете этот код свободно читать. Пока рано еще. :)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
СообщениеВ НБ есть еще такая вещь как отладчик.
Запускаете проект, в отладчике нажимаете паузу и пошагово просматриваете как работает код.

Первую ошибку НБ сразу выдает.
If "[RadioGroup11]=[#34]навести курсор на имя файла и щелкнуть два раза левой кнопкой мыши;[#34]"

Здесь нет кавычек после [RadioGroup11], перед и после знака равно, и перед [#34].

Вторая ошибка, нет Endif после этого условия. Ну и дальше тоже смотрю Endif отсутствует.

Вы научитесь код писать сначала с окнами мастеров. А после уже можно будет и в ручную исправлять, когда сумеете этот код свободно читать. Пока рано еще. :)

Автор - mishem
Дата добавления - 21 Ноября 2013 в 12:02
mishemДата: Чт, 21 Ноября 2013, 15:02 | Сообщение # 9
Эксперт форума
Вот вам пример с циклом и условиями.
Все на много проще чем кажется. ;)
Прикрепления: 8991881.zip (2.1 Kb)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
СообщениеВот вам пример с циклом и условиями.
Все на много проще чем кажется. ;)

Автор - mishem
Дата добавления - 21 Ноября 2013 в 15:02
  • Страница 1 из 1
  • 1
Поиск: