TobbeOo Skrevet 7. april 2009 Del Skrevet 7. april 2009 (endret) 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 7. april 2009 av TobbeOo Lenke til kommentar
Gjest Skrevet 7. april 2009 Del Skrevet 7. april 2009 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
Merko Skrevet 7. april 2009 Del Skrevet 7. april 2009 Om du skal gjøre slik at man kunn kan ha tall i tekstboksen kan du bruke følgende kode i KeyPress eventen. If Not Char.IsNumber(e.KeyChar) Then e.Handled = True End If Lenke til kommentar
TobbeOo Skrevet 7. april 2009 Forfatter Del Skrevet 7. april 2009 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
Gjest Skrevet 7. april 2009 Del Skrevet 7. april 2009 (endret) 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 7. april 2009 av Gjest Lenke til kommentar
Merko Skrevet 7. april 2009 Del Skrevet 7. april 2009 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
TobbeOo Skrevet 7. april 2009 Forfatter Del Skrevet 7. april 2009 (endret) Å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 7. april 2009 av TobbeOo Lenke til kommentar
Merko Skrevet 7. april 2009 Del Skrevet 7. april 2009 Sikkert fordi de ikke er under "KeyPress" eventen i VB. Bare der de kan ligge skjønner du Lenke til kommentar
TobbeOo Skrevet 7. april 2009 Forfatter Del Skrevet 7. april 2009 Takk igjen. Da er egentlig alt løst. Tusen hjertelig takk for alt Lenke til kommentar
Wubbable Skrevet 7. april 2009 Del Skrevet 7. april 2009 Men det skapte også et problem... Backspace fungerer ikke. (Siden den ikke er et tall) Lenke til kommentar
TobbeOo Skrevet 7. april 2009 Forfatter Del Skrevet 7. april 2009 (endret) Nei, det gjør det ikke. Men man kan i vesrte fall lage en knapp vedsiden av som restarter Endret 7. april 2009 av TobbeOo Lenke til kommentar
Alexen Skrevet 7. april 2009 Del Skrevet 7. april 2009 Er bare å bruke: If Not Char.IsNumber(e.KeyChar) And Not e.KeyChar = ControlChars.Back Then Lenke til kommentar
TobbeOo Skrevet 7. april 2009 Forfatter Del Skrevet 7. april 2009 Takker, dette er egentlig ikke et stort problem for meg, men skal se på det, håper det hjalp Wubbable. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå