Gå til innhold

[Løst]Visual Basic 2008 Express, Textbox1.text bare tall?


Anbefalte innlegg

Hei sann. Jeg holder på fortiden og lage noe greier i VB 2008 Express.

 

[Løst!]

1. Nå vill jeg at en textbox bare skal kunne støtte tall, slik at vis du skriver noe annet en tall, skjer ikke noe. Hvordan kan jeg gjøre dette?

 

 

[Løst!]

2. Jeg prøver og lage et "aksje" spill, som går ut på at du skal kjøpe aksjer, og selge igjen. Jeg vet hvordan en annen textbox kan generere et random nummer, men jeg vil at

 

Penger = Textbox 1

Pris per aksje = Textbox 2

Antall du har = Textbox 3

Antall du vil kjøpe = Textbox 4

 

Textbox 3 er da = +Textbox 4, og Textbox 1 er da =-Textbox 4 / textbox 2. Dette går forsåvidt fint, men da får jeg ikke et helt tall. Hvordan løse sånn at det bare blir et helt / rundt tall?

 

 

[Løst!]

3. Som ovenfor, du kan jo skrive at du vil ha 20000 akjser, selvom du bare har råd til 5. Noen måte jeg kan sette et "maks tall" du kan kjøpe til det du har råd til? Eventuelt, regne først ut, og bruke "if" kommandoen til og se om du har råd, vis ikke, så skjer ikke noe, og vis, så legge til på textbox3?

 

 

 

Mvh TobbeOo

Endret av TobbeOo
Lenke til kommentar
Videoannonse
Annonse

1) Bruk regex for at tekstboksen skal kun inneholde tall. (Regex Class - MSDN / Forøvrig kan du bruke Google)

 

2) Bruk IF kommandoen til å sjekke hvor mye penger du har. (Du bør kunne gjøre slik at du ikke kan endre den)

Lenke til kommentar

Merkoen, Trist og høre at du har kreft :(

 

Men...

 

@ColdIce, 2) kan jeg finne løsning på, 1), skjønte ikke helt hvordan bruke regex?

@Merkoen, Hvordan i KeyPress eventen? Bytte ut (e.KeyChar) med hvilken textbox? Og sånn jeg syns hadde vært greit (tror vil gi samme efekt) og putte koden i en Timer på 1 interval? Og Vis jeg har rett, (bytte ut (e.KeyChar med txtbox)) Hva er feil da med e.Handled = True, hva skal der?

 

Som kanskje ikke sagt, jeg er ikke helt komment inn i Visual Basic, men må jo lære ved og prøve et eller annet, takk for svar.

Lenke til kommentar

Du legger det under: textbox1_textchanged.

Der du koder:

Velg textbox1 til venstre for å velge objekt

Til høyre for å velge event velger du: keypress

så legger du inn koden ^^

 

EDIT:

Damn, skrive feil - Rettet opp da Merkoen kom med innlegget ^^

Endret av Gjest
Lenke til kommentar

Bare copy\paste den koden jeg skrev inn i KeyPress event, da kan man ikke skrive inn noe annet enn tall.

 

Trenger ikke endre noe på den.

 

 

 

    Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

If Not Char.IsNumber(e.KeyChar) Then 
e.Handled = True
End If

   End Sub

Lenke til kommentar

Åh, tusen takk Merkoen. Tester nå,

 

Edit:

 

Joa, man kan bare skrive tall først, men etter et hvilket som helst tall, så kan man skrive hva som helst..?

 

Edit2:

 

Nei, jeg som gjorde feil, unnskyld. Men nå er det blå strek under e.Handled og (e.KeyChar)

 

Edit3:

 

Fant det ut nå, tusen takk for hjelp, unnskyld at jeg er litt ikke vant med dette.

Endret av TobbeOo
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...