Садржај
У тесту вишеструког избора, свако питање се састоји од самог питања и различитих одговора, од којих је само једно тачно. Можете направити тест вишеструког избора у Висуал Басицу помоћу ознака да бисте приказали питања и радио дугмад за могуће одговоре, као и контроле тастера за кретање кроз различите проблеме. У коду, користите низове да бисте сачували питања и одговоре које је корисник послао и задржали променљиву бројача тако да знате питање у којем се налази корисник. На крају теста, означите одговоре корисника и прикажите резултат на обрасцу.
Упутства
Користите Висуал Басиц да бисте креирали сопствену емисију К & А (Ок, не ок слика ипал из Фотолиа.цом)-
Отворите нови Висуал Басиц пројекат. У образац додајте две ознаке, три радио дугмета и две контроле дугмета. Превуците две етикете на врх, са ознаком Лабел1 на врху Лабел2. Превуците РадиоБуттон1, РадиоБуттон2 и РадиоБуттон3 и поравнајте их вертикално испод етикета. Превуците два дугмета испод дугмета "радио" са Буттон1 на левој страни и Буттон2 на десној страни.
-
Притисните Ф7 да бисте отворили прозор кода. Унесите следећи код на нивоу класе:
Дим питања (2, 4) Као одговори низа (2) Ас Стринг Дим НумПерг Ас Интегер
Прва линија креира дводимензионални низ. Прва димензија се користи за свако питање, а друга за само питање, три избора одговора и тачан одговор. Друга линија креира низ за чување корисничких одговора. Трећи креира бројчану варијаблу која одређује које је питање корисник.
-
Унесите следећи код:
Привате Суб Гет Куестионс () куестионс = Нев Стринг (,) {{"Колико боја има дугу?", "5", "6", "7", "7" {"Ко је глумио у Пиратима Кариба?", "Јохнни Депп", "Јохн Малковицх", "Јохн Цусацк", "Јохнни Депп" {"Који је главни град Флориде?", "Мајами", "Таллахассее", "Јацксонвилле", "Таллахассее"}} Крај Суб
Овај потпрограм једноставно убацује три питања и одговоре у поље питања. Можете унети више питања или их чак увести у текстуалну датотеку, али свакако промијените величину поља питања и одговора како бисте прилагодили број питања.
-
Унесите следећи код:
Привате Суб Евалуате Тест () Дим пунтуацао Ас Интегер = 0 За и = 0 до 2 Ако су одговори (и) = питања (и, 4) Тада резултат = 1 Крај Ако је следећи Лабел1.Тект = "Тест је завршен!" Лабел2.Тект = "Притиснули сте" & "& ансверс.Ленгтх & &" грид & "питања!" РадиоБуттон1.Енаблед = Фалсе РадиоБуттон2.Енаблед = Фалсе РадиоБуттон3.Енаблед = Фалсе Буттон1.Енаблед = Фалсе Буттон2.Енаблед = Субтитле
Прва линија означава потпрограм који процењује тест. Он креира локалну варијаблу за одржавање резултата, а затим скенира питања у свом низу и одговоре које шаље корисник. За сваки одговор који добије, резултат се повећава за 1. На крају, показује интерпункцију и деактивира остатак контрола.
-
Отворите потпрограм Форм1_Лоад () и унесите следећи код:
Ме.Тект = "Тест више избора!" ГетПерФацтс () НумПерг = 1 Лабел1.Тект = "Питање" & куесНум & "од" & ансверс.Ленгтх Лабел2.Тект = Питања (0, 0) Буттон1.Тект = "Превиоус" Буттон2.Тект = "Нект" РадиоБуттон1.Тект = питања (0, 1) РадиоБуттон2.Тект = питања (0, 2) РадиоБуттон3.Тект = питања (0, 3)
Прва линија одређује текст у насловној траци. Следећи позив добија потпрограм за питања (). Трећи иницијализира бројач питања. Четврто показује у којем је питању корисник. Пета показује прво питање на етикети. Шести и седми мењају текст за два дугмета. Последња три реда уносе три избора као текст за три радио дугмета.
-
Отворите потпрограм Буттон1_Цлицк () и унесите следећи код
Ако нумПерг> 1 Потом нумПерг - = 1 Лабел1.Тект = "Питање" & куесНум & "3" Лабел2.Тект = Питања (нумПерг - 1, 0) РадиоБуттон1.Тект = Питања (нумПерг - 1, 1) РадиоБуттон2.Тект = куестионс (нумПерг - 1, 2) РадиоБуттон3.Тект = куестионс (нумПерг - 1, 3) Ако Буттон2.Тект = "Сенд" Затим Буттон2.Тект = "Нект" Енд иф Енд Иф
Ово је код за дугме "Претходно". Прво проверава да ли је корисник притиснуо дугме током првог питања. Ако није, одузима бројач питања од 1 и мења текст ознака и радио дугмади да би приказао претходно питање. Ако је корисник био у последњем питању, текст у Буттон2 се мења из "Сенд" у "Нект".
-
Отворите потпрограм Буттон2_Цлицк () и унесите следећи код:
Ако РадиоБуттон1.Цхецкед = Труе онда одговори (нумПерг - 1) = РадиоБуттон1.Тект ЕлсеИф РадиоБуттон2.Цхецкед = Труе Тада одговара (нумПерг - 1) = РадиоБуттон2.Тект ЕлсеИф РадиоБуттон3.Цхецкед = Труе Затим одговара (нумПерг - 1) = РадиоБуттон3. Тект Енд Ако је РадиоБуттон1.Фоцус () Ако нумПерг <3 Затим нумПерг + = 1 Лабел1.Тект = "Питање" & куесНум & "од" & ансверс.Ленгтх Лабел2.Тект = Питања (нумПерг - 1, 0) РадиоБуттон1.Тект = (нумПерг - 1, 1) РадиоБуттон2.Тект = питања (нумПерг - 1, 2) РадиоБуттон3.Тект = питања (нумПерг - 1, 3) Ако нумПерг = 3 Онда Буттон2.Тект = "Субмит" Енд Иф Елсе ЕвалуатеТест Енд Иф
Ово је код за дугме "Даље". Првих седам редова проверава који је радио дугме изабрао корисник и сачува одговор у низу одговора. Следећи ред мења фокус селекције на РадиоБуттон1. Следећа линија проверава да ли корисник није у последњем питању. Ако није, потпрограм повећава вредност променљиве бројача на један и попуњава радио ознаке и дугмад информације у следећем питању. Ако јесте, мења текст са дугмета "Даље" у "Пошаљи". Ако је корисник већ у последњем питању и кликнуо на "Пошаљи", програм позива подрутину Евалуате Тест да би добио резултат.
-
Сачувајте свој ВисуалБасиц програм. Притисните Ф5 да бисте је покренули.