Kieli on Visual Basic .NET ja kysymys seuraavanlainen:
Miten voidaan syöttää lukuja VB-ohjelmaan?
Siis niin että käyttäjä syöttää niitä lukuja ajon aikana... Siis jos tekee esimerkiksi jonkin laskukone ohjelman, tai vastaavan... Vähän niinkuin Textbox:lla voi syöttää tekstiä, niin pitäisi löytää joku keino syöttää lukuja, mitä voi käyttää laskutoimituksissa... Lukujahan voi syöttää myös tekstinä, mutta silloin niillä ei voi laskea.
Miten voidaan syöttää lukuja VB-ohjelmaan?
Siis niin että käyttäjä syöttää niitä lukuja ajon aikana... Siis jos tekee esimerkiksi jonkin laskukone ohjelman, tai vastaavan... Vähän niinkuin Textbox:lla voi syöttää tekstiä, niin pitäisi löytää joku keino syöttää lukuja, mitä voi käyttää laskutoimituksissa... Lukujahan voi syöttää myös tekstinä, mutta silloin niillä ei voi laskea.
Vastaukset 5
Vanhimmat
Hieman hankala sanoa - onko kyseessä konsolisovellus vai windows-ohjelma. Jos pitää testata syötetäänkö esim. TextBoxiin pelkkiä lukuja, kannattanee TextBoxin "TextChanged" -eventissä tarkistaa syöte esim. käyttämällä jotain regular expressionia.
Tietysti netistä löytyy myös TextBoxista varioituja kontrolleja jotka tekevät tämän automaattisesti. Ilmainen tällainen löytyy esim. osoitteesta http://www.windowsforms.com/controlGallery/ControlDetail.aspx?Control=287&tabindex=0
Näillä eväillä pääsee varmaan jo aika pitkälle. Kiitos.
TextBoxia voi käyttää, kun muuntaa tekstiruudusta luetun merkkijonon luvuksi
Val-funktiolla ja sijoittaa tuloksen muuttujaan. Luku=Val(TextBox1.Text).
Luku voi olla esim. Integer tai Double-tyyppiä.
Käyttäjän näppiksenkäyttöä voi tutkia funktiolla:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'ehto on tosi muilla kuin merkeillä 0...9
If KeyAscii < Asc("0") Or KeyAscii > Asc("9") Then
KeyAscii=0 'merkkiä ei tulosteta TextBoxiin
End If
End Sub
Funktioon voi lisätä ehdon myös yhden desimaalipilkun sallimiseen.
Tuo auttoi paljon, kiitos.
Nuo aikaisemmat ohjeet ovat OK, eli lue ensin tekstipuskuriin ja vasta puskurista kokonais tai liukulukumuuttujaan.
Mikä on etu? Jos teet ohjelman joka lukee tuntematon määrä lukuja pötköön niin sinun täytyy jotenkin ilmoittaa koska kaikki luvut ovat syötetty (esim. kirjoittamalla numeron sijasta "valmis"). Tai graafisessa käyttöliittymässä voit tekstikenttään kirjoittaa "oletusarvo". jne. Testaat ensin tekstisisällön, vasta sen jälkeen teet mahdollisesti muunnos numeromuotoon.