Пункты меню - VB

Узнай цену своей работы

Формулировка задачи:

Добрый день имеется меню, сделано оно именно цифрами дабы реализовать доступ для разных пользователей по разному. Собственно в чем вопрос та, как видите в программе там идут цифры, а при запуске самой программы это все дело заменяется текстом, и я не могу найти где же все таки разработчик привязал названия к цифрам, в самой форме где меню нету не чего подобного. Вряд ли он берет их из БД так как в профайлере не видно ни какого обращения. Может есть какая то фишка о которой я не знаю, есть идеи?

Решение задачи: «Пункты меню»

textual
Листинг программы
Sub LoadResStrings(Frm As Form)
    On Error Resume Next
    Dim ctl As Control
    Dim obj As Object
    Dim fnt As Object
    Dim sCtlType As String
    Dim nVal As Integer
    Dim val() As String
    'set the form's caption
    Frm.Caption = LoadResString(CInt(Frm.Tag)) & " (îáГ*îâëåГ*ГЁГҐ îò " & Refresh & ")" & " Ñåðâåð: " & SYS_SRV & " " & " ГЃГ*Г§Г*: " & SYS_DB
    'set the font
    Set fnt = Frm.Font
    fnt.Name = LoadResString(20)
    fnt.Size = CInt(LoadResString(21))
    'set the controls' captions using the caption
    'property for menu items and the Tag property
    'for all other controls
    For Each ctl In Frm.Controls
        Set ctl.Font = fnt
        sCtlType = TypeName(ctl)
        If sCtlType = "Label" Then
            ctl.Caption = LoadResString(CInt(ctl.Tag))
        ElseIf sCtlType = "Menu" Then
            ctl.Caption = LoadResString(CInt(ctl.Caption))
            frmSplash.Label1.Caption = LoadResString(CInt(ctl.Caption))
 
        ElseIf sCtlType = "TabStrip" Then
            For Each obj In ctl.Tabs
                obj.Caption = LoadResString(CInt(obj.Tag))
                obj.ToolTipText = LoadResString(CInt(obj.ToolTipText))
            Next
        ElseIf sCtlType = "Toolbar" Then
            For Each obj In ctl.Buttons
                obj.ToolTipText = LoadResString(CInt(obj.ToolTipText))
            Next
        ElseIf sCtlType = "ListView" Then
            For Each obj In ctl.ColumnHeaders
                obj.Text = LoadResString(CInt(obj.Tag))
            Next
        Else
            nVal = 0
            nVal = val(ctl.Tag)
            If nVal > 0 Then ctl.Caption = LoadResString(nVal)
            nVal = 0
            nVal = val(ctl.ToolTipText)
            If nVal > 0 Then ctl.ToolTipText = LoadResString(nVal)
        End If
    Next
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5
Похожие ответы