Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: JScript outputComma (irt.org) kääntö VB6:lle (JavaScript)

rautamiekka [29.11.2008 09:53:20]

#

http://www.irt.org/script/8.htm

Fiksumpi, saisiko tuon funktion käännettynä VB6:lle ?

Antti Laaksonen [29.11.2008 12:07:12]

#

Tuossa on yksi toteutus:

Function LisaaPilkut(luku As String) As String
    If Len(luku) < 4 Then
        LisaaPilkut = luku
    Else
        LisaaPilkut = LisaaPilkut(Left(luku, Len(luku) - 3)) & "," & Right(luku, 3)
    End If
End Function

Yllä olevaa funktiota käytetään näin:

MsgBox LisaaPilkut(1234567)

Toinen ratkaisu on käyttää funktiota Format seuraavasti:

MsgBox Format(1234567, "#,#")

Tässä tapauksessa tuhaterotin riippuu Windowsin kieliasetuksista. Esimerkiksi suomen kielessä tuhaterotin on välilyönti eikä pilkku.

rautamiekka [29.11.2008 12:43:30]

#

Kun txtAttackXP muuttuu, VB herjaa "ByRef argument type mismatch" TotalEnemies-muuttujasta yritettäessä ajaa sitä LisaaPilkut(käänsin sen -> AddComma) läpi.

Option Explicit
Dim TotalEnemies As Integer
Dim XPgain As Integer
Dim EnemyHits As Integer
Dim AttackType As String

Private Sub Calcu()
On Error Resume Next
    ' välistä poistettu koodia
    lblResults.Caption = "You need to kill " & AddComma(TotalEnemies) & txtEnemyHP.Text & "HP enemies to gain " & AddComma(XPgain) & "XP for level " & txtTargetLVL.Text & " " & AttackType
End Sub

Private Function AddComma(integerNumber As String) As String
    If Len(integerNumber) < 4 Then
        AddComma = integerNumber
    Else
        AddComma = AddComma(Left(integerNumber, Len(integerNumber) - 3)) & "," & (Right(integerNumber, 3))
    End If
End Function

Antti Laaksonen [29.11.2008 13:09:07]

#

Kutsu funktiota näin: AddComma((TotalEnemies)).

Vastaus

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

Tietoa sivustosta