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

📄 frmlistjobitem.frm

📁 金算盘软件代码
💻 FRM
📖 第 1 页 / 共 3 页
字号:
    UpdateEditMenuStatus
    Debug.Print "Chk4:" & Timer
End Sub

Private Sub cmdAgain_Click()
    With mclsList.DbTabCtrl
        If .CellValue(.Row + 1, mclsList.SortCol + 1) Like txtFind.Text & "*" Or Trim(.CellValue(.Row + 1, mclsList.SortCol + 1)) = "" Then
            If .Row < .Rows Then
                .Row = .Row + 1
            Else
                cmdAgain.Enabled = False
            End If
        Else
            cmdAgain.Enabled = False
        End If
    End With
End Sub

Private Sub cmdEAR_Click(index As Integer)
    Select Case index
        Case 0
            MakeListEditMenu
            UpdateEditMenuStatus
            mblnEdit = False
            mblnNewProject = False
            mblnNewProjectOrder = False
            PopupMenu frmMain.mnuListEdit, , cmdEAR(0).Left, cmdEAR(0).top + cmdEAR(0).Height
            If mblnEdit Then mclsMainControl_EditEdit
            If mblnNewProject Then
                frmProjectCard.AddCard
                Set frmProjectCard = Nothing
                mclsList.DbTabCtrl.Refresh
            End If
            If mblnNewProjectOrder Then
                frmProjOrderCard.AddCard ListID, GetProjectName
                Set frmProjOrderCard = Nothing
                mclsList.DbTabCtrl.Refresh
            End If
        Case 1
            frmEnterPriceCard.ShowCard ListID, GetProjectName
            Set frmEnterPriceCard = Nothing
            
        Case 3
            frmProDataCard.ShowCard ListID, GetProjectName
            Set frmProDataCard = Nothing
        Case 2
            Dim strName As String
            strName = GetProjectName
            frmBalCKCard.Project = IIf(Trim(strName) <> "", strName, "所有的工程")
            frmBalCKCard.Show vbModal
            Set frmProDataCard = Nothing
    End Select
    
End Sub

Private Sub Form_Activate()
     On Error Resume Next
    SetHelpID Me.HelpContextID
    mclsMainControl_ChildActive
    gclsSys.CurrFormName = Me.hWnd
    If ComPleteLoad > 1 Then ToolRefresh
    ComPleteLoad = ComPleteLoad + 1
    pctDataGrid.SetFocus
    UpdateEditMenuStatus
    If Me.WindowState = 1 Then Me.WindowState = 0
End Sub

Private Sub Form_Deactivate()
    frmMain.SetEditUnEnabled
    If ComPleteLoad > 3 Then
        ComPleteLoad = ComPleteLoad - 1
    Else
        ComPleteLoad = ComPleteLoad + 1
    End If
End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)
    On Error Resume Next
    If KeyAscii = vbKeyEscape Then
        Unload Me
    ElseIf KeyAscii = vbKeyReturn Then
        BKKEY Me.ActiveControl.hWnd, vbKeyTab
    End If
End Sub

Private Sub Form_Load()
    Dim i As Integer
    On Error GoTo ErrHandle
Debug.Print "LoadS:" & Timer
    MsgForm.PleaseWait
    ComPleteLoad = 0
    Me.HelpContextID = 60014
    blnEdit = IsCanDo(13, gclsBase.OperatorID) '391判断有无编辑权
    Me.Caption = "在建工程合同列表"
    Set pctDataGrid.MouseIcon = GetFormResPicture(101, vbResCursor)
    Set mclsList = New ListGrid
    'Set mclsList.Find = txtFind
    'Set mclsList.DataGrid = pctDataGrid
    mclsList.Thwnd = pctDataGrid.hWnd
    Debug.Print "1:" & Timer
    mclsList.ListSet.ViewId = mintViewId
    Debug.Print "2:" & Timer
    mIsFind = False
    intcboFindKind
    mIsFind = True
    Debug.Print "3:" & Timer
    mclsList.intTabs = 1
    mclsList.DbTabCtrl.Clear
    MakeListSql 0
    Debug.Print "3-1:" & Timer
    mclsList.SetGridFormate
    Debug.Print "4:" & Timer
    'SetFormation
    Debug.Print "5:" & Timer
    UpdateEditMenuStatus
    Set mclsMainControl = gclsSys.MainControls.Add(Me)
    Unload MsgForm
    ComPleteLoad = ComPleteLoad + 1
    Debug.Print "LoadE:" & Timer
     Exit Sub
     Dim edtErrReturn As ErrDealType
ErrHandle:
    edtErrReturn = Errors.ErrorsDeal
    If edtErrReturn = edtResume Then
         Resume
    Else
         On Error Resume Next
         Unload MsgForm
         Unload Me
    End If
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
    If Button = vbRightButton And frmMain.ActiveForm Is Me Then
        MakeListEditMenu
        UpdateEditMenuStatus
        mblnEdit = False
        mblnNewProject = False
        mblnNewProjectOrder = False
        PopupMenu frmMain.mnuListEdit
        If mblnEdit Then mclsMainControl_EditEdit
        If mblnNewProject Then
            frmProjectCard.AddCard
            Set frmProjectCard = Nothing
            mclsList.DbTabCtrl.Refresh
        End If
        If mblnNewProjectOrder Then
            frmProjOrderCard.AddCard ListID, GetProjectName
            Set frmProjOrderCard = Nothing
            mclsList.DbTabCtrl.Refresh
        End If
    End If
End Sub
Private Sub Form_Resize()
    If Me.WindowState = 1 Then Exit Sub
    If Me.WindowState = vbNormal Then
        If Me.width <= 6300 Then Me.width = 6300
        If Me.Height <= 3500 Then Me.Height = 3500
    End If
    RedrawForm
End Sub
Private Sub Form_Unload(Cancel As Integer)
    If mclsList.ListSet.ListID < 1 Then
       mclsList.SaveListSet
    End If
    Set mclsList = Nothing
    gclsSys.MainControls.Remove Me
    Set mclsMainControl = Nothing
End Sub

Private Sub mclsMainControl_ChildActive()
    Dim vntMessage As Variant
    SetHelpID Me.HelpContextID
    gclsSys.CurrFormName = Me.hWnd
    For Each vntMessage In mclsMainControl.Messages
        If vntMessage = Message.msgProject Or vntMessage = Message.msgProjectOrder Then
            ToolRefresh
            mclsMainControl.Messages.Remove CStr(vntMessage) '清除消息
        End If
    Next
    UpdateEditMenuStatus
End Sub

Private Sub mclsMainControl_EditColumn()
    Dim strOld As String
    Dim lngSortCol As Long
    
    strOld = txtFind.Text
    With mclsList
        lngSortCol = .SortCol
        If mclsList.ListSet.ShowListSet(mintViewId) Then
            ReMakeData
        End If
        If .SortCol = lngSortCol Then txtFind.Text = strOld
    End With
End Sub

Private Sub mclsMainControl_EditDel()
    Dim lngID As Long
    Dim strCode As String
    Dim blnSuccess As Boolean
    With mclsList
        If .DbTabCtrl.Row > .TotalRow(.intTab) Then .DbTabCtrl.Row = .TotalRow(.intTab)
        .Resultset(.intTab).AbsolutePosition = .DbTabCtrl.Row
        strCode = .Resultset(mclsList.intTab).rdoColumns("在建工程编码").Value
    End With
    lngID = ListID
    If Trim(strCode) <> "" Then
        blnSuccess = frmProjectCard.DelCard(lngID)
    Else
        blnSuccess = frmProjOrderCard.DelCard(GetlngProjectOrderID)
    End If
    mclsList.Resultset(mclsList.intTab).Requery
    If blnSuccess Then
        ToolRefresh
    End If
End Sub

Private Sub mclsMainControl_EditEdit()
    Dim lngID As Long
    Dim strCode As String
    Me.Enabled = False
    
    With mclsList
        If .DbTabCtrl.Row > .TotalRow(.intTab) Then .DbTabCtrl.Row = .TotalRow(.intTab)
        .Resultset(.intTab).AbsolutePosition = .DbTabCtrl.Row
        strCode = .Resultset(mclsList.intTab).rdoColumns("在建工程编码").Value
    End With
    lngID = ListID
    If Trim(strCode) <> "" Then
        frmProjectCard.EditCard lngID
    Else
        frmProjOrderCard.EditCard GetlngProjectOrderID
    End If
    mclsList.Resultset(mclsList.intTab).Requery
    Me.Enabled = True
End Sub

Private Sub mclsMainControl_EditFilter()
      '筛选
    Dim blnFlage As Boolean
    Dim strOld As String
    strOld = txtFind.Text
    With mclsList
        If .ListSet.ListID < 1 Then
           .ListSet.SaveList
        End If
        Filter.ShowFilter .ListSet.ListID, 1, , , , , blnFlage
        If Not blnFlage Then Exit Sub
        .ListSet.RefreshWhere
        .SaveListSet
        ToolRefresh
        UpdateEditMenuStatus
        '初始化查找复合列表框
        txtFind.Text = strOld
    End With
End Sub

Private Sub mclsMainControl_EditInActive()
    Dim lngID As Long
    Dim strCode
    Dim blnRemark  As Boolean
    Dim intResponse As Integer
    Dim blnYes As Boolean
    With mclsList
        If .TotalRow(.intTab) < 1 Then Exit Sub
        If .DbTabCtrl.Row > .TotalRow(.intTab) Then .DbTabCtrl.Row = .TotalRow(.intTab)
        .Resultset(.intTab).AbsolutePosition = .DbTabCtrl.Row
        strCode = .Resultset(mclsList.intTab).rdoColumns("在建工程编码").Value
        blnRemark = IIf(Trim(.Resultset(mclsList.intTab).rdoColumns(1).Value) <> "", True, False)
    End With
    'lngID = ListID
    If Trim(strCode) = "" Then Exit Sub
    If blnRemark And IsLowerCode(strCode) Then
        intResponse = ShowMsg(Me.hWnd, "是否取消所有下级的停用标记", vbYesNo, Me.Caption)
        blnYes = IIf(intResponse = 6, True, False)
    End If
    If UpdateIsActive(strCode, Not blnRemark, blnYes) Then
        ToolRefresh
    End If
End Sub

Private Sub mclsMainControl_EditNew()
    'frmProjectCard.AddCard
    'frmProjOrderCard.AddCard GetlngProjectOrderID
End Sub

Private Sub mclsMainControl_EditShowAll()
    frmMain.mnuEditShowAll.Checked = Not frmMain.mnuEditShowAll.Checked
    If chkShowall.Value = 0 Then
        chkShowall.Value = 1
    Else
        chkShowall.Value = 0
    End If
End Sub

Private Sub mclsMainControl_FilePrint()
'    Dim myPrintclass As PrintClass
'    Set myPrintclass = New PrintClass
'    'mclsList.ReGetColCaption
'
'    'mclsList(sstCustom.Tab).AddReGetColCaption
'    Set myPrintclass = Nothing
    Dim myPrintclass As PrintClass
    Dim strSortChar As String
    Set myPrintclass = New PrintClass
    With mclsList
        strSortChar = Right(.DbTabCtrl.CellFormula(0, .SortCol + 1), 1)
        .DbTabCtrl.CellFormula(0, .SortCol + 1) = Left(.DbTabCtrl.CellFormula(0, .SortCol + 1), Len(.DbTabCtrl.CellFormula(0, .SortCol + 1)) - 1)
    'myPrintclass.PrintNewList gclsBase.BaseDB, mclsList.Resultset(mclsList.intTab), mclsList.DbTabCtrl, mintPrintID(mclsList.intTab), mstrPrintTitle(mclsList.intTab)
        myPrintclass.PrintNewList gclsBase.BaseDB, mclsList.Resultset(0), mclsList.DbTabCtrl.TableHandle, 99, "在建工程合同列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
     .DbTabCtrl.CellFormula(0, .SortCol + 1) = .DbTabCtrl.CellFormula(0, .SortCol + 1) & strSortChar
    End With
    Set myPrintclass = Nothing
End Sub
Private Sub mclsMainControl_FilePrintSetup()
    Dim MyPrintSet As PrintClass
    Set MyPrintSet = New PrintClass
    MyPrintSet.PrintNewSetUp gclsBase.BaseDB, mclsList.DbTabCtrl.TableHandle, , , , 99, "在建工程合同列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
    Set MyPrintSet = Nothing
End Sub

Private Sub mclsMainControl_ToolRefresh()
    Me.MousePointer = vbHourglass
    'ToolRefresh
    RefreshRecList
    Me.MousePointer = vbDefault
End Sub

Private Sub pctDataGrid_Click()
     With mclsList
        If .DbTabCtrl.Row < .DbTabCtrl.Rows Then
            If .TotalRow(.intTab) > 0 Then .Resultset(.intTab).MoveFirst
            If .DbTabCtrl.Row - 1 <> 0 Then .Resultset(.intTab).AbsolutePosition = .DbTabCtrl.Row '- 1 'mResultset(mTab).Move .Row - 1, 1
        Else
            .DbTabCtrl.Row = .DbTabCtrl.Rows - 1
            If .TotalRow(.intTab) > 0 Then .Resultset(.intTab).MoveFirst
            If .DbTabCtrl.Row - 1 <> 0 Then .Resultset(.intTab).AbsolutePosition = .DbTabCtrl.Row '- 1 ' mResultset(mTab).Move .Row - 1, 1
        End If
        '.SetRow
        If Not .Resultset(.intTab).EOF And Not .Resultset(.intTab).BOF Then
        mblnIsFindTextChange = False
        txtFind.Text = IIf(IsNull(.Resultset(.intTab).rdoColumns(.SortCol + 1).Value), "", .Resultset(.intTab).rdoColumns(.SortCol + 1).Value)
        mblnIsFindTextChange = True
        End If
    End With
    Exit Sub
End Sub
Private Sub pctDataGrid_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = 37 Or KeyCode = 38 Or KeyCode = 39 Or KeyCode = 40 Then
        With mclsList
        If .DbTabCtrl.Row = 0 Then
            .DbTabCtrl.Row = 1
            mclsList.SetRow
        End If
        If .TotalRow(.intTab) = 0 Then Exit Sub
        If .DbTabCtrl.Row < .DbTabCtrl.Rows Then
                .Resultset(.intTab).AbsolutePosition = .DbTabCtrl.Row '- 1
        Else
            .DbTabCtrl.Row = .DbTabCtrl.Rows - 1
                .Resultset(.intTab).AbsolutePosition = .DbTabCtrl.Row '- 1
        End If
            If Not .Resultset(.intTab).EOF And Not .Resultset(.intTab).BOF Then
                mblnIsFindTextChange = False
                txtFind.Text = IIf(IsNull(.Resultset(.intTab).rdoColumns(.SortCol + 1).Value), _
                                "", .Resultset(.intTab).rdoColumns(.SortCol + 1).Value)
                mblnIsFindTextChange = True
            End If
        End With
    End If
    Exit Sub
End Sub
Private Sub pctDataGrid_DblClick()
    Dim lngX As Long
    Dim lngY As Integer
    
    With mclsList.DbTabCtrl
        .MouseCell lngX, lngY
     If lngX > 0 And lngX < .Rows And frmMain.mnuEditEdit.Enabled Then

⌨️ 快捷键说明

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