Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: InputBoxista Cancel (VB.Net)

KettuS [05.07.2006 16:02:39]

#

Eli jos inputboxilla kysyy jotain tietoa, niin miten voi havaita, onko käyttäjä painanut OK vai Cancel näppäintä?

Käytän VB 2005 Expressiä

BadSource [06.07.2006 07:24:16]

#

Seuraava toimii VB6:ssa, voit kokeilla mitä 2k5 Express asiasta sanoo. Inputbox palauttaa nolla merkkiä pitkän stringin, kun painetaan Cancelia tai OK:ta inputboxin ollessa tyhjä. Ero näillä nolla stringeillä on se, että OK:n myötä varataan muuttujalle tilaa muistista, kun taas Cancel jättää varauksen tekemättä.

Private Sub Form_Click()
    Dim tmp As String

    tmp = InputBox("Test:", "Input")
    If StrPtr(tmp) = 0 Then 'StrPtr kertoo muistivarauksen paikan
        MsgBox "Cancel"
    ElseIf LenB(tmp) = 0 Then 'LenB kertoo muuttujan pituuden bitteinä. Nopeampi kuin normaali Len
        MsgBox "Zero lenght string"
    Else
        MsgBox tmp
    End If
End Sub

KettuS [06.07.2006 16:58:33]

#

Express ei ilmeisesti tunne sellaisia kuin "StrPtr" tai "LenB". Len toimi kun perästä otti pois B:n mutta StrPtr on sille ihan outo käsite.

Metabolix [06.07.2006 23:10:08]

#

Katsopa tämä, kriittinen funktio on aivan lopussa: http://www.devx.com/vb2themax/Tip/19625

KettuS [07.07.2006 11:49:08]

#

Juuri tätä kaipasinkin.
Kiitti metabolix!

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta