⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmin_kjkmwh.frm

📁 一个用VB写的财务软件源码
💻 FRM
📖 第 1 页 / 共 5 页
字号:
Private Sub mnuNew_Click()

    ContorlMenu "add"
    Call Operate("ADD")
End Sub

Private Sub mnuPreview_Click()
    Call Operate("PREVIEW")
End Sub

Private Sub mnuPrint_Click()
    Call Operate("PRINTALL")
End Sub

Private Sub mnuSave_Click()
    ContorlMenu "save"
    Call Operate("SAVE")
    Me.MousePointer = 0
End Sub


Private Sub mnusaveexcel_Click()
  Call PrePrint("execel")
  Me.MousePointer = vbDefault
End Sub

Private Sub mnusavehtml_Click()
  Call PrePrint("html")
            Me.MousePointer = vbDefault
End Sub

Private Sub mnusavetxt_Click()
  Call PrePrint("txt")
   Me.MousePointer = vbDefault
End Sub

Private Sub tabKm_Click()
    Dim iCount As Integer
    Dim j As Integer
    Dim ctl As Control
    'lijian**
        If m_bFirst Then
       m_bFirst = False
       Exit Sub
    End If

    Me.MousePointer = vbHourglass
    If tabKm.SelectedItem.Index <> 1 Then
        If loadflag(tabKm.SelectedItem.Index - 1) = False Then
        clsOnekjkm.LoadAllRoot tvwKm(tabKm.SelectedItem.Index), tabKm.Tabs(tabKm.SelectedItem.Index), "*", True
        tvwKm(tabKm.SelectedItem.Index).Nodes("R").Selected = True
        tvwKm(tabKm.SelectedItem.Index).Nodes("R").Expanded = True
        loadflag(tabKm.SelectedItem.Index - 1) = True
        End If
    End If
    
    For Each ctl In Me.Controls
        If TypeOf ctl Is TextBox Then
            ctl.text = ""
            ctl.Enabled = False
        ElseIf TypeOf ctl Is CheckBox Then
            ctl.value = 0
            ctl.Enabled = False
        ElseIf TypeOf ctl Is ComboBox Then
            ctl.text = ""
            ctl.Enabled = False
        ElseIf TypeOf ctl Is MaskEdBox Then
            ctl.Mask = ""
            ctl.text = ""
            ctl.Enabled = False
        End If
    Next ctl
    tbrKm.Buttons("Add").Enabled = False
    tbrKm.Buttons("Edit").Enabled = False
    tbrKm.Buttons("Delete").Enabled = False
    tbrKm.Buttons("Save").Enabled = False
    tbrKm.Buttons("Cancel").Enabled = False
    mnuNew.Enabled = False
    mnuEdits.Enabled = False
    mnuDelete.Enabled = False
    mnuSave.Enabled = False
    mnuCancel.Enabled = False
    If stbKm.Tab = 1 Then
        stbKm.Tab = 1
    End If
    If tabKm.SelectedItem.Index = 1 Then
        tvwKm(tabKm.SelectedItem.Index).Nodes("R").Selected = True
        tvwKm(1).Visible = True
        For j = 2 To tabKm.Tabs.Count
        tvwKm(j).Visible = False
        Next j
        If stbKm.Tab = 0 Then Call FillGrid
    Else
        tvwKm(tabKm.SelectedItem.Index).Nodes("R").Selected = True
        For j = 2 To Iwatch
        tvwKm(j).Visible = False
        Next j
        tvwKm(1).Visible = False
        tvwKm(tabKm.SelectedItem.Index).Visible = True
        If stbKm.Tab = 0 Then Call FillGrid
    End If
    Me.MousePointer = vbDefault
    
End Sub

Private Sub tbrKm_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu)
Call Operate(UCase(ButtonMenu.Key))
End Sub

Private Sub tvwKm_NodeClick(Index As Integer, ByVal Node As MSComctlLib.Node)
'lijian**
      '修改会计科目提示保存
  If m_bFirst Then
     m_bFirst = False
     Exit Sub
  End If

NodeClick Index, Node
'end**
End Sub
Private Sub NodeClick(Index As Integer, ByVal Node As MSComctlLib.Node)
    Dim NodeLevel As Integer
    Dim ctl As Control
    Dim Logi As Boolean
    Dim nd As Node
   
   If Node.Key <> "R" Then
        If Node.Parent.Key <> "R" Then
            Nodestr = Mid(Node, 1, InStr(Node, "=") - 1) & glo.sSeparateSubject
        End If
    End If
        
    Me.MousePointer = vbHourglass
    If Node.Key = "R" Then
        Logi = True
        tbrKm.Buttons("Add").Enabled = False
        tbrKm.Buttons("Edit").Enabled = False
        mnuNew.Enabled = False
        mnuEdits.Enabled = False
    ElseIf Node.Parent.Key = "R" Then
        Logi = True
        tbrKm.Buttons("Edit").Enabled = False
        tbrKm.Buttons("Add").Enabled = True
        mnuNew.Enabled = True
        mnuEdits.Enabled = False
    Else
        Logi = False
    End If
    If Logi Then
        For Each ctl In Me
            If TypeOf ctl Is Label Then
            ElseIf TypeOf ctl Is TextBox Then
                clsMyNormal.LockOneBox ctl
                ctl.text = ""
            ElseIf TypeOf ctl Is ComboBox Then
                clsMyNormal.LockOneBox ctl
                ctl.text = ""
            ElseIf TypeOf ctl Is CheckBox Then
                ctl.Enabled = False
                ctl.value = 0
            ElseIf TypeOf ctl Is OptionButton Then
                ctl.Enabled = False
            ElseIf TypeOf ctl Is MaskEdBox Then
                ctl.Enabled = False
            End If
        Next ctl
        If Node.Key <> "R" Then
          ContorlMenu "cancel"
        End If
'        optFx(0).Value = True
        txtKmdm.Mask = ""
        txtKmdm = ""
        txtKmjs.Enabled = False
        lblDirec.Caption = ""
        tbrKm.Buttons("Delete").Enabled = False
        tbrKm.Buttons("Save").Enabled = False
        tbrKm.Buttons("Cancel").Enabled = False
        mnuDelete.Enabled = False
        mnuSave.Enabled = False
        mnuCancel.Enabled = False
    Else
        '如果是非顶层节点的点击。
        lblDirec.Caption = Dirstt(Node.FullPath)
        lblDirec.Caption = "科目:" & Mid(lblDirec.Caption, InStr(1, lblDirec.Caption, "\") + 1)
        For Each ctl In Me
            If TypeOf ctl Is Label Then
            ElseIf TypeOf ctl Is TextBox And ctl.Name <> "txtKmjs" Then
                ctl.text = ""
            ElseIf TypeOf ctl Is ComboBox Then
                ctl.text = ""
            ElseIf TypeOf ctl Is CheckBox And ctl.Name <> "chkEnd" And ctl.Name <> "chkMid" And ctl.Name <> "chkYhz" Then
                ctl.value = 0
                ctl.Enabled = True
            End If
        Next ctl
        
        
        Call FillBox(Node)
        
        If chkWbhs.value = 0 Then clsMyNormal.LockOneBox cboWbdw
        If chkSlhs.value = 0 Then clsMyNormal.LockOneBox txtSldw
        If chkXjll.value = 0 Then clsMyNormal.LockOneBox cboXjlb
        If chkCollect.value = 0 Then clsMyNormal.LockOneBox cboCollectSubject
                
        '如果该结点处于末级,则不允许“添加”操作。nodelevel为下一级节点的级次
        NodeLevel = clsOnekjkm.GetLevel(Node) - 1
        If adoRst.State = adStateOpen Then adoRst.Close
        adoRst.Open "select kmdm,kmmc,kmmceng,zjm,kmlx,kmjc,IsEndkm,yefx,zygs,hzdykm," & _
                "sldw,wbdw,IsRjz,IsYhz,IsGrwlhs,IsKhwlhs,IsGyswlhs,IsBmhs,IsXmhs,IsXjllkm," & _
                "Xjlllb,Isfc,bUse,bAdd from tZW_Km" & glo.sOperateYear & " where kmdm='" & Right(tvwKm(tabKm.SelectedItem.Index).SelectedItem.Key, Len(tvwKm(tabKm.SelectedItem.Index).SelectedItem.Key) - 1) & "'", glo.cnnMain, adOpenStatic, adLockOptimistic
         tbrKm.Buttons("Add").Enabled = True
         mnuNew.Enabled = True
        If Node.Parent.Key = "R" Then
            tbrKm.Buttons("Add").Enabled = True
            mnuNew.Enabled = True
        End If
        If (adoRst.Fields("bUse") = 0) Then
            lblUse.Visible = False
        Else
            lblUse.Visible = True
        End If
'        m_LockKm.SetStatus adoRst.Fields("Isfc").value
'        If m_LockKm.GetStatus = 0 Then
'            lblLock.Visible = False
'        Else
'            lblLock.Visible = True
'        End If
        If (adoRst.Fields("bUse") = 0) And adoRst.Fields("bAdd") Then
        '没用明细科目的一级允许修改,汇总科目的类型和余额方向不可更改
            
            For Each ctl In Me
                If TypeOf ctl Is Label Then
            '一级明细未用科目全部可更改,非一级明细未用科目的类型、方向不可更改
                ElseIf TypeOf ctl Is TextBox Then
                    If Trim$("" & ctl.Name) = "txtKmjs" Then
                        clsMyNormal.LockOneBox ctl
                    ElseIf Trim$("" & ctl.Name) <> "txtSldw" Then
                        clsMyNormal.UnlockOneBox ctl
                    End If
                ElseIf TypeOf ctl Is ComboBox Then
                    If Trim$("" & ctl.Name) = "cboKmlx" Then
                        If Node.Children = 0 Then
                            If Len(Node.Key) = 4 Then
                                clsMyNormal.UnlockOneBox ctl
                            Else
                                clsMyNormal.LockOneBox ctl
                            End If
                        Else
                            clsMyNormal.UnlockOneBox ctl
                            cboKmlx.BackColor = vbWhite
                            cboKmlx.Enabled = True
                        End If
                    Else
                        If Trim$("" & ctl.Name) <> "cboXjlb" And Trim$("" & ctl.Name) <> "cboWbdw" _
                            And Trim$("" & ctl.Name) <> "cboCollectSubject" Then
                            clsMyNormal.UnlockOneBox ctl
                        End If
                    End If
                ElseIf TypeOf ctl Is CheckBox Then
                    If Not (Trim$("" & ctl.Name) = "chkGrwl" Or Trim$("" & ctl.Name) = "chkKhwl" Or Trim$("" & ctl.Name) = "chkGyswl" Or Trim$("" & ctl.Name) = "chkBmhs" Or Trim$("" & ctl.Name) = "chkZxhs") Then
                        If Trim$("" & ctl.Name) = "chkFc" Then
                            If Node.Children = 0 Then
                                ctl.Enabled = True
                            Else
                                ctl.Enabled = False
                            End If
                        Else
                            If Trim$("" & ctl.Name) = "chkEnd" Or Trim$("" & ctl.Name) = "chkMid" Then
                                ctl.Enabled = False
                            Else
                                ctl.Enabled = True
                            End If
                        End If
                    End If
                ElseIf TypeOf ctl Is OptionButton Then
                    If Node.Children = 0 Then
                        ctl.Enabled = True
                    Else
                        ctl.Enabled = True
                    End If
                ElseIf TypeOf ctl Is MaskEdBox Then
                    If Node.Children > 0 Then
                        ctl.Tag = Right(Node.Key, Len(Node.Key) - 1)
                        ctl.Enabled = False
                    Else
                        ctl.Mask = ""
                        ctl.Tag = Right(Node.Key, Len(Node.Key) - 1)
                        ctl.Enabled = True
                    End If
                End If
            Next ctl
        Else
        '在用明细科目
            
            If Node.Children = 0 Then
                For Each ctl In Me
                    If TypeOf ctl Is Label Then
                    ElseIf TypeOf ctl Is TextBox Then
                        If Trim$("" & ctl.Name) = "txtKmjs" Then
                            clsMyNormal.LockOneBox ctl
                        ElseIf Trim$("" & ctl.Name) <> "txtSldw" Then
                            clsMyNormal.UnlockOneBox ctl
                        End If
                    ElseIf TypeOf ctl Is ComboBox Then
                        If Trim$("" & ctl.Name) = "cboKmlx" Then
                            clsMyNormal.LockOneBox ctl
                        Else
                            If Trim$("" & ctl.Name) <> "cboXjlb" And Trim$("" & ctl.Name) <> "cboWbdw" Then clsMyNormal.UnlockOneBox ctl
                        End If
                    ElseIf TypeOf ctl Is CheckBox Then
                        If Not (Trim$("" & ctl.Name) = "chkGrwl" Or Trim$("" & ctl.Name) = "chkKhwl" Or Trim$("" & ctl.Name) = "chkGyswl" Or Trim$("" & ctl.Name) = "chkBmhs" Or Trim$("" & ctl.Name) = "chkZxhs") Then
                            If Trim$("" & ctl.Name) = "chkEnd" Or Trim$("" & ctl.Name) = "chkMid" Then
                                ctl.Enabled = False
                            Else
                                ctl.Enabled = True
                            End If
                        End If
                    ElseIf TypeOf ctl Is OptionButton Then
                        ctl.Enabled = False
                    ElseIf TypeOf ctl Is MaskEdBox Then
                        ctl.Tag = Right(Node.Key, Len(Node.Key) - 1)
                        ctl.Enabled = False
                    End If
                Next ctl
            Else
            '在用汇总科目
                For Each ctl In Me
                    If TypeOf ctl Is Label Then
                    ElseIf TypeOf ctl Is TextBox Then
                        If Trim$("" & ctl.Name) = "txtKmjs" Then
                            clsMyNormal.LockOneBox ctl
                        ElseIf Trim$("" & ctl.Name) <> "txtSldw" Then
                            clsMyNormal.UnlockOneBox ctl
                        End If
                    ElseIf TypeOf ctl Is ComboBox Then
                        If Trim$("" & ctl.Name) <> "cboXjlb" And Trim$("" & ctl.Name) <> "cboWbdw" Then clsMyNormal.UnlockOneBox ctl
                    ElseIf TypeOf ctl Is CheckBox Then
                        If Not (Trim$("" & ctl.Name) = "chkGrwl" Or Trim$("" & ctl.Name) = "chkKhwl" Or Trim$("" & ctl.Name) = "chkGyswl" Or Trim$("" & ctl.Name) = "chkBmhs" Or Trim$("" & ctl.Name) = "chkZxhs") Then
                            If Trim$("" & ctl.Name) = "chkFc" Then
                                ctl.Enabled = False
                            ElseIf Trim$("" & ctl.Name) = "chkEnd" Or Trim$("" & ctl.Name) = "chkMid" Then
                                ctl.Enabled = False
                            Else
                                ctl.Enabled = True
                            End If
                        End If
                    ElseIf TypeOf ctl Is OptionButton Then
                        ctl.Enabled = True
                    ElseIf TypeOf ctl Is MaskEdBox Then
                        ctl.Tag = Right(Node.Key, Len(Node.Key) - 1)
                        ctl.Enabled = False
                    End If
                Next ctl
           

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -