De fleste kontrollene i Visual Basic har en tilhørende "klikk "-funksjonen , som button1_click for en knapp kontroll eller PictureBox1_Click for en PictureBox . Ved å skrive kode i disse klikksfunksjoner , kan spillet ditt svare på en klikkelyd arrangement gjort av spilleren . Eksempler på klikke spill inkluderer multiple choice quiz, kortspill og gåter . Du kan legge til noen andre elementer i spillet for å gi ekstra utfordringer , for eksempel en score og en tidtaker . Dette vil holde spillerne spille om og om igjen . Instruksjoner
en
Åpen Visual Basic og starte et nytt prosjekt . Dobbeltklikk på " PictureBox " kontroll tre ganger for å legge tre knapper til skjemaet , kalt " PictureBox1 ", " PictureBox2 " og " PictureBox3 . " Klikk og dra hver enkelt å justere dem horisontalt i midten av skjemaet. Endre hver enkelts backcolor egenskapen til "røde ".
2
Dobbeltklikk på "Label " kontroll to ganger for å legge til " Label1 " og " Label2 " til skjemaet . Dra hver slik at de blir stilt opp vertikalt under de tre bildeblokker . Den øvre etiketten vil vise spillerens score. Den nedre etiketten vil vise tiden som er igjen i spillet.
3
Dobbeltklikk på "Timer " kontroll for å legge til " Timer1 " til skjemaet . Som timerkontrollen seg ikke dukker opp når spillet kjører , trenger du ikke å ordne det visuelt. Endre kontrollens aktivert eiendom til "true ". Endre intervallet eiendommen til " 100". Dette gjør det slik timeren vil minske den gjenværende tiden i spillet hver 10. av et sekund.
4
Dobbeltklikk et tomt område på skjemaet for å åpne opp koden vinduet for " Form1_Load "-funksjonen . Skriv inn følgende kode :
Randomize ( ) Label1.Text = " Resultat :" & scoreLabel2.Text = " Tid som gjenstår :" & timegetNewColor ( )
først linje, kalt " Tilfeldig "-funksjonen sikrer du oppretter et tilfeldig tall hver gang du trenger det. Den andre og tredje linjer endre teksten for begge etiketter . Den fjerde linjen kaller en funksjon du vil opprette for å endre fargen på boksen når brukeren får et poeng.
5
Sett markøren under klassen erklæringen. Skriv inn følgende for å erklære og sette opp følgende variabler:
Dim poengsum As Integer = 0Dim tid som desimal = 10,0
Den første variabelen holder rede på stillingen ved hjelp av et heltall , som bare tillater hele tall. Den andre linjen skaper en desimal variabel for å spore den tiden som er igjen i spillet. Desimaltall tillate fraksjoner . Du kan endre datatype som passer dine behov eller også endre initializations å lage en lengre eller kortere spill.
6
Sett markøren på den siste linjen etter den eksisterende koden . Skriv inn følgende : en
Private Sub getNewColor ( ) Dim num Som Integernum = Cint (Int ( ( 3 * Rnd ( ) ) + 1 ) ) Hvis num = 1 ThenPictureBox1.BackColor = Color.GreenElseIf num = 2 ThenPictureBox2 . BackColor = Color.GreenElseIf num = 3 ThenPictureBox3.BackColor = Color.GreenEnd IfEnd Sub
Denne funksjonen kaller Rnd funksjonen til tilfeldig endre en av de tre bildeblokker fra rødt til grønt. I dette eksempel kan den samme boksen teoretisk gjenta som den grønne boksen mer enn én gang på rad . Dette vil holde spillerne gjette .
7
Åpne " PictureBox1_Click "-funksjonen . Skriv inn følgende kode :
p Hvis PictureBox1.BackColor = Color.Green Thenscore + = 1Label1.Text = " Resultat :" & scorePictureBox1.BackColor = Color.RedgetNewBox ( ) End If
< p > den første linjen sjekker for å sikre at brukeren har klikket PictureBox1 når det er grønt. I så fall spillets trinn spillerens poengsum etter én , oppdatere resultatene etiketten tilsvarende, tilbakestiller PictureBox1 til rødt , deretter kaller " getNewBox " funksjonen for å endre en av tre bokser fra rødt til grønt .
8
Åpne " PictureBox2_Click "-funksjonen . Skriv inn følgende kode :
p Hvis PictureBox2.BackColor = Color.Green Thenscore + = 1Label1.Text = " Resultat :" & scorePictureBox2.BackColor = Color.RedgetNewBox ( ) End If
9
Åpne " PictureBox3_Click "-funksjonen . Skriv inn følgende kode :
p Hvis PictureBox3.BackColor = Color.Green Thenscore + = 1Label1.Text = " Resultat :" & scorePictureBox3.BackColor = Color.RedgetNewBox ( ) End If
10
Åpne " Timer1_Tick "-funksjonen . Skriv inn følgende kode :
p Hvis ikke tid = 0,0 Thentime - = 0.1Label2.Text = " Tid som gjenstår :" & timeElseTimer1.Enabled = FalsePictureBox1.BackColor = Color.RedPictureBox2.BackColor = Color.RedPictureBox3 . BackColor = Color.RedLabel1.Text = " Din sluttresultatet er :" & scoreEnd Hvis
den første linjen kontrollerer om spillets tid er utløpt . Hvis ikke, svekkelser det verdien med 0,1 og oppdaterer klokkeslettet etiketten. Hvis tid er utløpt , slås kampen timeren , endringer hele PictureBox kontrollerer til rød og viser sluttsummen .
11
Klikk på " run "-knappen eller trykk "F5 " til å begynne å spille spillet. Timeren begynner å telle ned fra 10 umiddelbart og en av de tre PictureBox kontrollene er grønn . Klikk på den grønne boksen for å score poeng før tiden renner ut .