Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> Visual Basics Programmering >> Content

    Hur man använder Visual Basic för att skapa ett flervalstest

    Varje fråga i ett flervalstest består av en fråga i sig och flera olika svar , av vilka endast ett är korrekt . Du kan skapa ett flervalstest i Visual Basic med hjälp av etiketter för att visa frågor , radioknappar för de möjliga svaren och kontroller knappen för att navigera mellan olika frågor . I koden använder matriser för att spara de frågor och svar som användaren lägger fram och upprätthålla en räknare variabel att hålla reda på vilken fråga användaren är på . Vid slutet av testet , markera användarens svar och visa resultatet på blanketten. Instruktioner
    1

    Öppna ett nytt Visual Basic-projekt . Lägg två etiketter , tre radioknappar och två kontroller knappen till formuläret . Dra de två etiketterna till toppen med Label1 ovanpå Label2 . Dra RadioButton1 , RadioButton2 och RadioButton3 att rada upp vertikalt under etiketterna . Dra de två knapparna under radioknapparna med Button1 till vänster och Button2 till höger .
    2

    Tryck " F7 " för att öppna registret fönstret . Skriv följande kod på klassnivå :

    Dim frågor ( 2 , 4 ) Som

    String
    Dim svar ( 2 ) As String

    Dim quesNum As Integer

    Den första raden skapar en tvådimensionell grupp . Den första dimensionen är för varje fråga och den andra dimensionen är att själva frågan , tre val svar och det rätta svaret . Den andra raden skapar en array för att lagra användarens svar . Den tredje linjen skapar en räknare variabel som håller koll på den fråga användaren är på Addera 3

    Skriv följande kod : .

    Private Sub GetQuestions ( ) katalog

    frågor = new String ( , ) { { " Hur många färger i en regnbåge ? " , " 5 " , " 6 " , " 7 " , " 7 " } , _

    { " Who huvudrollen i Pirates of the Caribbean ? " , " Johnny Depp " , " John Malkovich " , " John Cusack " , " Johnny Depp " } , _

    { " Vad heter huvudstaden i Florida? " , " Miami " , " Tallahassee " , " Jacksonville " , " Tallahassee " } }

    End Sub

    Denna subrutin initierar helt enkelt de tre frågor och svar i frågor arrayen . Du kan lägga till ytterligare frågor eller få dem på andra sätt , till exempel genom en textfil , men om du gör det , kom ihåg att ändra storleken på den frågan och arrayer svar att rymma antalet frågor .
    4

    Skriv följande kod :

    Private Sub MarkTest ( ) katalog

    Dim årskurs As Integer = 0

    för i = 0 till 2 Review p Om svar ( i) = frågor ( I , 4 ) Sedan

    grade + = 1

    End If

    Nästa

    Label1.Text = " Test klar ! "

    Label2.Text = " Du gjorde " & grade & " av " & answers.Length & " ! "

    RadioButton1.Enabled = False

    RadioButton2.Enabled = False

    RadioButton3.Enabled = False

    Button1.Enabled = False

    Button2.Enabled = False

    End Sub

    första raden deklarerar en subrutin som markerar testet . Det skapar en lokal variabel att räkna poäng , sedan cyklar igenom svaren på frågorna arrayen och svaren som lämnats av användaren . För varje svar som matchar , går betyget upp med ett. Den visar sedan resultatet i etiketterna och inaktiverar resten av kontrollerna
    5

    Öppna Form1_Load ( ) subrutin och skriv följande kod : .

    Me.Text = " My Multiple Choice Quiz ! "

    GetQuestions ( ) katalog

    quesNum = 1

    Label1.Text = " Fråga " & quesNum & " av " & answers.Length

    Label2.Text = frågor ( 0 , 0 ) katalog

    Button1.Text = " Tidigare "

    Button2.Text = "next "

    RadioButton1.Text = frågor ( 0 , 1 ) katalog

    RadioButton2.Text = frågor ( 0 , 2 ) katalog

    RadioButton3.Text = frågor ( 0 , 3 ) katalog

    den första raden anger titeln i namnlisten . Nästa rad anropar GetQuestions () subrutin. Den tredje linjen initierar variabeln frågan räknaren . På fjärde raden visas vad fråga nummer användaren är på . Den femte raden visar ifrågasätter en i etiketten . Sjätte och sjunde linjerna ändra texten för de två knapparna . De sista tre raderna infoga tre flervalssvar som text för de tre knapparna
    6

    Öppna Button1_Click ( ) subrutin och skriv följande kod : .
    P Om quesNum > 1 Då

    quesNum - = 1

    Label1.Text = " Fråga " & quesNum & " 3 "

    Label2.Text = frågor ( quesNum - 1 , 0 )

    RadioButton1.Text = frågor ( quesNum - 1 , 1 ) katalog

    RadioButton2.Text = frågor ( quesNum - 1 , 2 ) katalog

    RadioButton3.Text = frågor ( quesNum - 1 , 3 ) katalog p Om Button2.Text = " Submit " Då

    Button2.Text = " Next "

    End If

    End If
    p Detta är koden för " Föregående" . Den kontrollerar först för att se om användaren tryckte på knappen samtidigt redan på den första frågan . Om inte , Minskar det frågan räknaren med ett och uppdaterar texten för etiketter och alternativknappar för att visa föregående fråga . Om användaren var den sista frågan , texten på button2 ändras från " Submit " tillbaka till
    7

    Öppna Button2_Click ( ) subrutin och skriv följande kod " Next . " :

    Om RadioButton1.Checked = sant då

    svar ( quesNum - 1 ) = RadioButton1.Text

    elseIf RadioButton2.Checked = sant då

    svar ( quesNum - 1 ) = RadioButton2.Text

    elseIf RadioButton3.Checked = sant då

    svar ( quesNum - 1 ) = RadioButton3.Text

    slut om

    RadioButton1.Focus ( ) katalog p Om quesNum < 3 Sen

    quesNum + = 1

    Label1.Text = " Fråga " & quesNum & " av " & answers.Length

    Label2.Text = frågor ( quesNum - 1 , 0 ) katalog

    RadioButton1.Text = frågor ( quesNum - 1 , 1 ) katalog

    RadioButton2.Text = frågor ( quesNum - 1 , 2 ) katalog

    RadioButton3.Text = frågor ( quesNum - 1 , 3 ) katalog p Om quesNum = 3 Då

    Button2.Text = " Submit "

    End Om

    Else

    MarkTest ( ) katalog

    End If
    p Detta är koden för " Next " -knappen . De första sju raderna kontrollera att se vad alternativknappen användaren hade valt , så sparar det svaret till svar arrayen . Nästa rad fokuserar urvalet radioknappen på RadioButton1 . Nästa rad kontroller för att se till att användaren inte är på den sista frågan . Om detta är sant , det ökar den frågan räknaren med ett och uppdaterar de etiketter och alternativknappar för att visa nästa fråga . Därefter kontrollerar att se om användaren är nu på den sista frågan . Om så är fallet , det ändrar texten för knappen Nästa från " Next " till " Skicka". Om användaren redan var på den sista frågan och klickade på " Submit ", programmet kallar " MarkTest " -funktionen för att få användarens poäng .
    8

    Spara Visual Basic-program . Tryck " F5 " för att köra den . Addera

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur Pass data från en form till en Query Åtkomst
    ·Hur man läser e-post i VB
    ·Hur man lär VBScript Online
    ·Så här visar du en apostrof i VBScript
    ·Hur man skriver manus med Notepad
    ·Hur man skriver en funktion för att infoga objekt i Dr…
    ·Hur man använder Visual Basic för att kontrollera Ste…
    ·Hur man använder en Web Service för att visa data på…
    ·Hur man följa händelser i VBA
    ·Hur man kan få ett 2007 VBA Email Attachment
    Utvalda artiklarna
    ·Hur till Skapa meddelande Maps i MFC
    ·Hur man skriver VB Code för en pekskärm knappsats
    ·PHP Fatal Error : Memory Utmattad
    ·Java Fel PID : 236
    ·Hur man spelar en WAV i VB
    ·Hur man skapar tidsstämplar i batch-filer
    ·Hur man använder de vanligaste MySql datatypen String
    ·C Funktioner för Xilinx
    ·Blickfång Protokoll
    ·Hur man installerar WAMP Server ansträngning
    Copyright © Dator Kunskap http://www.dator.xyz