1. VisualBasic / Говнокод #5206

    −174

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    Sub display(frm As Form)
        Dim lvl As Boolean
        Dim format As String
        If (frm.optSex(0).value) Then
            format = oI18n.translate("res_m")
            format = Replace(format, "\n", vbCrLf, 1, -1, vbBinaryCompare)
            format = Replace(format, "*", frm.cmbSchool.Text, 1, 1, vbTextCompare)
            format = Replace(format, "*", frm.txtForm.Text, 1, 1, vbTextCompare)
            format = Replace(format, "*", frm.txtName.Text, 1, 1, vbTextCompare)
            format = Replace(format, "*", frm.txtSurname.Text, 1, 1, vbTextCompare)
            lvl = False
            For Each optLvl In frm.chkLevel
                If (optLvl.value) Then
                    format = Replace(format, "*", oI18n.translate(optLvl.Tag & "_m"), 1, 1, vbTextCompare)
                    lvl = True
                End If
            Next optLvl
            If (Not lvl) Then format = Replace(format, "*", oI18n.translate("Bad" & "_m"), 1, 1, vbTextCompare)
        End If
        If (frm.optSex(1).value) Then
            format = oI18n.translate("res_f")
            format = Replace(format, "\n", vbCrLf, 1, -1, vbBinaryCompare)
            format = Replace(format, "*", frm.cmbSchool.Text, 1, 1, vbTextCompare)
            format = Replace(format, "*", frm.txtForm.Text, 1, 1, vbTextCompare)
            format = Replace(format, "*", frm.txtName.Text, 1, 1, vbTextCompare)
            format = Replace(format, "*", frm.txtSurname.Text, 1, 1, vbTextCompare)
            lvl = False
            For Each optLvl In frm.chkLevel
                If (optLvl.value) Then
                    format = Replace(format, "*", oI18n.translate(optLvl.Tag & "_f"), 1, 1, vbTextCompare)
                End If
            Next optLvl
            If (Not lvl) Then format = Replace(format, "*", oI18n.translate("Bad" & "_f"), 1, 1, vbTextCompare)
        End If
        Dim dalykai As String
        Dim first As Boolean
        dalykai = ""
        first = True
        For Each chkFavorite In frm.chkFavorites
            If (chkFavorite.value) Then dalykai = dalykai & IIf(first, vbCrLf, vbCrLf) & (chkFavorite.Caption)
            first = False
        Next chkFavorite
        If (frm.chkFavoriteOther.value) Then dalykai = dalykai & IIf(first, vbCrLf, vbCrLf) & (frm.txtFavoriteOther.Text)
        Dim b As Boolean
        b = dalykai = ""
        If (b) Then
            If (frm.optSex(0).value) Then dalykai = oI18n.translate("nores_m")
            If (frm.optSex(1).value) Then dalykai = oI18n.translate("nores_f")
        End If
        If (Not b) Then
            If (frm.optSex(0).value) Then dalykai = oI18n.translate("res2_m") & dalykai
            If (frm.optSex(1).value) Then dalykai = oI18n.translate("res2_f") & dalykai
        End If
        
        MsgBox (format & vbCrLf & dalykai)
    End Sub

    заполняем строку-шаблон, заменяя звездочки реальными данными
    вот не было в VB6 printf-подобной функции ((

    Запостил: Lure Of Chaos, 10 Января 2011

    Комментарии (9) RSS

    • > вот не было в VB6 printf-подобной функции ((

      зачем? массивы то в VB есть: зафигачиваешь функцию для распила строки в массив по разграничителю + функцию для склеивания строки из массива, а все остальное становится относительно простым.
      Ответить
      • на мой взгляд, это еще хуже. Ну да ладно, надеюсь, мне уже не придется сталкиваться с бейсиком
        Ответить
    • реально кто-то еще испольщзует VB?
      Ответить

    Добавить комментарий