VB net - textbox, substring
Prikazujem rezultate 1 do 4 od 4

Tema: VB net - textbox, substring

  1. #1
    Obećava
    Učlanjen
    12.05.2003.
    Pol
    muški
    Lokacija
    osteM
    Poruke
    56
    Reputaciona moć
    54

    Podrazumevano VB net - textbox, substring

    Pozdrav,

    U input textbox se upisuje datum u sledecem formatu (dd mm yyyy). Na primer, 10 05 2008. A u drugom textboxu, pomocu algoritma, dobija se koji je to dan u nedelji.

    pomocu SUBSTRING-a, odvio sam dan, mesec i godinu.


    inDate = TextBox1.Text

    inDay = CInt(inDate.Substring(0, 2))
    inMonth = CInt(inDate.Substring(3, 2))
    inYear = CInt(inDate.Substring(6, 4))


    Ako datum nije upisan u tacnom formatu, na primer ako se negde GRESKOM upise slovo umesto broja (integer), dolazi do exception error-a.

    Kako mogu da da zaustavim i podesim ovo?



  2. #2
    Početnik
    Učlanjen
    14.05.2007.
    Pol
    muški
    Poruke
    44
    Reputaciona moć
    0

    Podrazumevano Re: VB net - textbox, substring

    Stavi to u try blok, a u catch uhvatiš izuzetak. Npr:
    try
    inDay = CInt(inDate.Substring(0, 2))
    inMonth = CInt(inDate.Substring(3, 2))
    inYear = CInt(inDate.Substring(6, 4))
    catch ex As Exception
    MsgBox("Greška: " & ex.ToString())
    end try

    Ali, tu hvataš samo izuzetak ako inDay, inMonth ili inYear nisu brojevi. Šta ako ja ukucam 35.33.3980? Predlažem ti da modifikuješ to i iskoristiš DataTimePicker da bi ovo izbegao!

  3. #3
    Obećava
    Učlanjen
    12.05.2003.
    Pol
    muški
    Lokacija
    osteM
    Poruke
    56
    Reputaciona moć
    54

    Podrazumevano Re: VB net - textbox, substring

    Citat Original postavio pex35 Pogledaj poruku
    Stavi to u try blok, a u catch uhvatiš izuzetak. Npr:
    try
    inDay = CInt(inDate.Substring(0, 2))
    inMonth = CInt(inDate.Substring(3, 2))
    inYear = CInt(inDate.Substring(6, 4))
    catch ex As Exception
    MsgBox("Greška: " & ex.ToString())
    end try

    Ali, tu hvataš samo izuzetak ako inDay, inMonth ili inYear nisu brojevi. Šta ako ja ukucam 35.33.3980? Predlažem ti da modifikuješ to i iskoristiš DataTimePicker da bi ovo izbegao!

    poz,

    tvoj kod je stvarno pomogo, i ako ga bas ne razumem.

    neznam sta taco "try" radi, i sta je "catch" i "ex" .


    Evo jos jedno pitanje, ako neko upise sledeci format:

    1 2 2003

    da se automatski upise:

    01 02 2003


    hvala ti na predhodnom odgovoru

  4. #4
    Početnik
    Učlanjen
    14.05.2007.
    Pol
    muški
    Poruke
    44
    Reputaciona moć
    0

    Podrazumevano Re: VB net - textbox, substring

    U try bloku pišeš deo koda gde može da nastane izuzetak, kao npr. inDay = CInt(inDate.Substring(0, 2)). Odnosno inDate.Substring(0, 2) će možda biti konvertovan u int a možda i neće. Ako ima slovo neće, nastaće izuzetak, koji ti hvataš i obrađuješ u catch bloku. Za ovo drugo, ne znam šta da ti kažem, ja sam pravio masku na text box-u, sa sve tačkama. Kad sam napravio, odustao sam od toga . Lako je ako unese tako, razdvojeno razmacima. Uradiš split nad tim stringom i ispitaš kolika je dužina prvog i drugog tako dobijenog stringa:

    dim arDate() as string
    arDate = TextBox1.Text.Split(" ")
    if arDate(0).Lenght=1 then arDate(0)="0" & arDate(0)
    if arDate(1).Lenght=1 then arDate(1)="0" & arDate(1)
    TextBox1.Text=arDate(0) & " " & arDate(1) & " " & arDate(2)

    Ali šta ako unese 1112008, da li je 11.1 ili 1.11?

Slične teme

  1. Visual Basic 2008 Express Edition Pomoc (textbox)
    Autor hak019 u forumu Programiranje
    Odgovora: 2
    Poslednja poruka: 12.01.2009., 23:28
  2. aktivni textbox u VB6
    Autor acca u forumu Programiranje
    Odgovora: 2
    Poslednja poruka: 01.02.2005., 20:18

Pravila za slanje poruka

  • Ne možete kreirati novu temu
  • Ne možete poslati odgovor
  • Ne možete dodati priloge
  • Ne možete prepraviti svoju poruku
  •