-26 / 6 / 1
Регистрация: 26.06.2011
Сообщений: 157

Не переходить к следующему вопросу в тестах, пока не выбран OptionButton

16.09.2012, 01:33. Показов 2752. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Друзья подскажите у меня есть программа с вопросами, вопросы показываются в OptionButton, при щелчке на кнопку с надписью далее вопросы меняются, но у меня проблема как сделать так чтоб пока пользователь не щелкнул по OptionButton следующий вопрос не появлялся на форме. А появлялось сообщение вы не ответили на вопрос. Спасибо
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.09.2012, 01:33
Ответы с готовыми решениями:

Переход к следующему вопросу в экспертной системе
Создаю экспертную систему в visual studuo. Нужен код, чтоб после ответа да или нет переключалось на следующий вопрос, а в конце исходя из...

Переход к следующему вопросу в программе тестирования
Прошу помощи так как уже устал, и просто не знаю что делать. Отрывок кода: procedure TForm4.Button1Click(Sender:...

Перейти к следующему вопросу в программе тестирования
Всем привет, есть форма,на ней 3 checkbox,1 label, 1 button. В лэйбле написан вопрос (тестирование) checkbox - 3 варианта ответа ...

15
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
16.09.2012, 06:59
Цитата Сообщение от Skriptik Посмотреть сообщение
у меня есть программа с вопросами
Покажи что есть, подскажем как исправить.
1
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
16.09.2012, 08:22
Цитата Сообщение от Skriptik Посмотреть сообщение
как сделать так чтоб пока пользователь не щелкнул по OptionButton следующий вопрос не появлялся на форме
Сделать недоступной кнопку "Следующий вопрос" до тех пор пока пользователь не выбрал ответ.
Типа так:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub Command1_Click() 'щелчок по кнопке  "Далее"
    '
    Command1.Enabled = False 'делаем кнопку "Далее" недоступной
    'тут твой код
    '
End Sub
 
' Обрабатывам именно это событие, а не Option1_Click(так боллее корректно будет работать)
Private Sub Option1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
     '
     Command1.Enabled = True 'разрешаем  кнопку "Далее"
     '
End Sub
0
Заблокирован
16.09.2012, 08:52
Цитата Сообщение от Skriptik Посмотреть сообщение
как сделать так чтоб пока пользователь не щелкнул по OptionButton следующий вопрос не появлялся на форме
Знакомо ли тебе такое понятие, что человек то есть тестируемый может пропустить вопрос и вернуться к нему позже, может он сложный для него, и после ответа на все вопросы он вернется именно к нему?

На форме поставь 4 Option с индексами от 0 до 3. Далее в кнопку следующий вопрос вставь код:

Visual Basic
1
2
3
If Option1(0).Value = False And Option1(1).Value = False And Option1(2).Value = False And Option1(3).Value = False Then
    MsgBox "Вы не ответили на вопрос!": Exit Sub
End If
Теперь, после проверки условий, когда покажет программа другие вопросы, перед этим ставь значение всех Option(Index).Value = False

Что-то типа такого:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Private Sub Command1_Click()
If Option1(0).Value = False And Option1(1).Value = False And Option1(2).Value = False And Option1(3).Value = False Then
    MsgBox "Âû íå îòâåòèëè íà âîïðîñ!"
Else
    'Ïîêàçûâàåì òóò ñëåäóþùèå âîïðîñû
    Option1(0).Value = False
    Option1(1).Value = False
    Option1(2).Value = False
    Option1(3).Value = False
End If
End Sub
0
-26 / 6 / 1
Регистрация: 26.06.2011
Сообщений: 157
16.09.2012, 10:50  [ТС]
Но у меня вопросы идут через Select Case
P
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
rivate Sub Command1_Click()
Command1.Caption = "Ïðîäîëæèòü òåñò"
i = i + 1
Select Case i
Case 1
Label1.Caption = "Ãëàâíûì óñòðîéñòâîì ïåðñîíàëüíîãî êîìïüþòåðà ÿâëÿåòñÿ?"
Option1.Caption = "1)Ìûø"
Option2.Caption = "2)Ïðîöåññîð"
Option3.Caption = "3)Æåñòêèé äèñê"
Option4.Caption = "4)ÏÇÓ"
Case 2
If Option2.Value = True Then
x = x + 1
c подсчетом правельных ответов. Вот как сделать чтоб через Case .
0
Заблокирован
16.09.2012, 10:53
Ну подставь значения под свои, я тебе пример написал!

Не по теме:

Вот из-за таких разработчиков, потом сбои в программах и падают ракеты и спутники. :D

0
-26 / 6 / 1
Регистрация: 26.06.2011
Сообщений: 157
16.09.2012, 11:42  [ТС]
Нет пишет ошибку
0
Заблокирован
16.09.2012, 11:48
Выложи сюда твое "творение"!
0
-26 / 6 / 1
Регистрация: 26.06.2011
Сообщений: 157
16.09.2012, 13:03  [ТС]
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
Private Sub Command1_Click()
i = i + 1
Select Case i
Case 1
Label1.Caption = "Ãëàâíûì óñòðîéñòâîì ïåðñîíàëüíîãî êîìïüþòåðà ÿâëÿåòñÿ?"
Option1.Caption = "2)Âèí÷åñòåð"
Option2.Caption = "2)Ïðîöåññîð"
Option3.Caption = "3)Æåñòêèé äèñê"
Option4.Caption = "4)ÏÇÓ"
Case 2
If Option2.Value = True Then
x = x + 1
End If
Label1.Caption = "Ýíåðãîíåçàâèñèìûì óñòðîéñòâîì ïåðñîíàëüíîãî êîìïüþòåðà"
Option1.Caption = "1)ÎÇÓ "
Option2.Caption = "2)Ïðîöåññîð"
Option3.Caption = "  3)ÑD-ROM  "
Option4.Caption = "4)ÏÇÓ"
Case 3
If Option4.Value = True Then
x = x + 1
End If
Label1.Caption = "Ìàíèïóëÿòîð ìûøü ýòî óñòðîéñòâî"
Option1.Caption = "1)Âûâîäà"
Option2.Caption = "2)ââîäà  "
Option3.Caption = "3) Ñ÷èòûâàíèÿ èíôîðìàöèè   "
Option4.Caption = "4)Ñêàíèðîâàíèÿ"
Case 4
If Option2.Value = True Then
x = x + x + 1
End If
Label1.Caption = "Ê âíåøíèì çàïîìèíàþùèì óñòðîéñòâàì îòíîñÿòñÿ"
Option1.Caption = "1) Ïðîöåññîð "
Option2.Caption = "2) Ìîíèòîð"
Option3.Caption = "3) )Ïðèíòåð"
Option4.Caption = "4) Æåñòêèé äèñê"
Case 5
If Option4.Value = True Then
x = x + 1
End If
Label1.Caption = "Ïëîòòåð ýòî óñòðîéñòâî"
Option1.Caption = "1) äëÿ ñ÷èòûâàíèÿ ãðàôè÷åñêîé èíôîðìàöèè "
Option2.Caption = "2) äëÿ ââîäà"
Option3.Caption = "3)äëÿ âûâîäà "
Option4.Caption = "4)äëÿ ïå÷àòè"
Case 6
If Option1.Value = True Then
x = x + 1
End If
Label1.Caption = "×åìó ðàâåí 1 ãèãàáàéò ?"
Option1.Caption = "1)103 Ìáàéò"
Option2.Caption = "2)1000 Ìáàéò "
Option3.Caption = "3) 1000 000 Êáàéò"
Option4.Caption = "4) 210   ^10  Ìáàéò"
Case 7
If Option4.Value = True Then
x = x + 1
End If
If x = 5 Then
Command1.Caption = "Âûõîä"
Label1.Caption = "Âû ñïðàâèëèñü íàæìèòå âûõîä"
Form1.ForeColor = vbGreen
Label2.Caption = ""
End If
If x = 4 Then
Command1.Caption = "Âûõîä"
Label1.Caption = "Âû ñïðàâèëèñü, íà 3 íàæìèòå âûõîä"
Label1.ForeColor = vbRed
Label2.Caption = ""
ElseIf x < 4 Then
Label2.Caption = ""
Command1.Visible = True
Label1.Caption = "Âû íå ñïðàâèëèñü, õîòèòå ñíîâà, íàæìè ñíîâà, à çàòåì äàëüøå"
End If
Case 7
End
End Select
Label2.Caption = "Âàøà îöåíêà" & x
End Sub
 
Private Sub Command2_Click()
x = 0
i = 0
Command1.Caption = "Äàëüøå"
End Sub
 
 
Private Sub Form_Load()
Form2.Show
Form1.Hide
End Sub
0
Заблокирован
16.09.2012, 13:06
О Господи! Выложи сюда весь проект, я в многабукв не понимаю! Просто сожми его в архиве и выложи.
0
-26 / 6 / 1
Регистрация: 26.06.2011
Сообщений: 157
16.09.2012, 15:06  [ТС]
Ты мне просто скажи как мне подставить в Select case Твой код

Добавлено через 44 секунды
Я сделал как ты показал но не получается выдает ошибку.

Добавлено через 8 минут
Весь проект у меня как показанно выше.
0
Заблокирован
16.09.2012, 15:10
1. Какая из 2 кнопок у тебя отвечает за функцию проверки ответа вопросов и перехода к другому, вот в нее ставь код:
Visual Basic
1
2
3
4
5
6
7
8
9
If Option1.Value = False And Option2.Value = False And Option3.Value = False And Option14.Value = False Then
    MsgBox "Вы не ответили на вопрос!"
Else
    'Показываем тут следующие вопросы
    Option1.Value = False
    Option2.Value = False
    Option3.Value = False
    Option4.Value = False
End If
Что сложного?

Если у тебя ошибка, покажи снимок или напиши, что в ошибке сообщается!

Ну включи ты немного соображалку! Тем более ты делаешь такой примитивный код для тестирования.
0
-26 / 6 / 1
Регистрация: 26.06.2011
Сообщений: 157
16.09.2012, 15:37  [ТС]
Вот смотри, Эта кнопка у меня отвечает за функцию проверки ответов. Ну и куда мне вставить твой код.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Private Sub Command1_Click() 
i = i + 1
Select Case i
Case 1
Label1.Caption = "Главнм устройством персонального компьютера является?"
Option1.Caption = "2)Винчестер"
Option2.Caption = "2)Процессор"
Option3.Caption = "3)Жесткий диск"
Option4.Caption = "4)ПЗУ"
Case 2
If Option2.Value = True Then
x = x + 1
End If
Label1.Caption = "Энерго зависимым устройством персонального компьютера является?"
Option1.Caption = "1)ОЗУ "
Option2.Caption = "2)Процессор"
Option3.Caption = "  3)CD-ROM  "
Option4.Caption = "4)ПЗУ"
Case 3
If Option4.Value = True Then
x = x + 1
End If
Label1.Caption = "Манипулятор  мыш это устройство"
Option1.Caption = "1)Вывода"
Option2.Caption = "2)Ввода  "
Option3.Caption = "3) Считования информации  "
Option4.Caption = "4)Сканирования"
Case 4
If Option2.Value = True Then
x = x + 1
End If
Label1.Caption = "К внешним запоминающимся устройствам относятся"
Option1.Caption = "1) Жесткий диск "
Option2.Caption = "2) Процессор"
Option3.Caption = "3) )Монитор"
Option4.Caption = "4)Принтер"
Case 5
If Option1.Value = True Then
x = x + 1
End If
Label1.Caption = "Плоттер это устройство"
Option1.Caption = "1) Для считывания графической информации "
Option2.Caption = "2) Для ввода"
Option3.Caption = "3)Для вывода"
Option4.Caption = "4)Для печати"
Case 6
If Option1.Value = True Then
x = x + 1
End If
If x = 5 Then
Command1.Caption = "Выход"
Label1.Caption = "Вы справились нажмите выход"
Label2.Caption = ""
End If
If x = 4 Then
Command1.Caption = "Выход"
Label1.Caption = "Вы справились , на 3 нажмите выход"
Label1.ForeColor = vbRed
Label2.Caption = ""
ElseIf x < 4 Then
Label2.Caption = ""
Command1.Visible = True
Label1.Caption = "Вы не справились, хотите снова, нажмите снова, а затем дальше"
End If
Case 7
End
End Select
Label2.Caption = "Ваша оценка" & x
End Sub
 
 
 
Private Sub Command2_Click()
i = 0
x = 0
End Sub
Добавлено через 2 минуты
Вот практически всф программа без 2 форм. ну это ладно и куда мне подставить твой код в OptionButton я проставил индексы от 0 до 3 как ты показал но потом , куда бы я не подставил твой код, везде пишет ошибку.

Добавлено через 6 минут
Все разобрался . Просто не надо ни каких индексов проставлять . ты сказал что надо поставить индексы в OptionButton от 0 до 3 а это делать не надо вот поэтому и не получалось писало ошибку.
 Комментарий модератора 
Теги для этого кода VB. Выделяете Ваш код и нажимаете такую кнопку в редакторе
0
Заблокирован
16.09.2012, 15:38
Цитата Сообщение от Skriptik Посмотреть сообщение
Вот смотри, Эта кнопка у меня отвечает за функцию проверки ответов. Ну и
Все разобрался . Просто не надо ни каких индексов проставлять . ты сказал что надо поставить индексы в OptionButton от 0 до 3 а это делать не надо вот поэтому и не получалось писало ошибку.
Skriptik, я тебе пример приводил ты хоть читал, или искал готового решения? Я тебе сказал переделай под свой без индексов или добавь как у меня!
0
-26 / 6 / 1
Регистрация: 26.06.2011
Сообщений: 157
16.09.2012, 16:01  [ТС]
ну так дело в том что теперь у меня подсчет оценки на форму не выводится.

Добавлено через 11 минут
Да ты все правильно мне показал спасибо. Но теперь у меня подсчет оценок не выводится на форму.
 Комментарий модератора 
Для спасибо ещё есть кнопка под каждым полезным постом!
0
Заблокирован
16.09.2012, 16:10
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от Skriptik Посмотреть сообщение
Да ты все правильно мне показал спасибо. Но теперь у меня подсчет оценок не выводится на форму.
Так ты проект свой правильно создавай, а не как попало.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.09.2012, 16:10
Помогаю со студенческими работами здесь

Создание теста. Переход к следующему вопросу
Подскажите, пожалуйста, как сделать: имеются вопросы и варианты ответа, которые читаются из текстового файла и выводятся в на...

Программа тест: осуществить переход к следующему вопросу с запоминанием ответа
Надо создать программу тест! в момент когда начинается тестирование,после выбора ответа при нажатии на &quot;далее&quot; надо перейти к...

Перейти к следующему вопросу только после того, как дан ответ на текущий
const TestName='Test_'; // имя файла теста max=1000; // максимальное количесво вопросов var Form1: TForm1; QuestionText:...

При нажатии стрелки вправо переходить к следующему кадру
Здравствуйте, такая проблема. На форме имеется picturebox, две кнопки и textbox. Первая кнопка открывает файл, вторая делает необходимые...

Программа для социальной сети, как переходить к следующему аккаунту
Доброго времени суток. Стоит задача написать программу для соц. сети Мой Мир Майл.ру. Суть программы - авторизоваться и принять все заяви в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru