Школоло / Говнокод #5206 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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 Lure Of Chaos, (Updated )

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

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

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

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

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8