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

📄 frmmain.vb

📁 <Visual Basic 数据库开发实例精粹(第二版)>一书首先介绍了Visual Basic(简称VB)开发的技巧和重点技术
💻 VB
📖 第 1 页 / 共 4 页
字号:
    Me.mnuClient.Index = 2
    Me.mnuClient.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.mnuAddClient, Me.mnuModifyClient, Me.mnuDelClient, Me.mnuClientInfo, Me.mnuSplit1, Me.mnuSearchClient, Me.MenuItem1, Me.mnuSendEmail, Me.mnuSplit2, Me.mnuShowInGroup, Me.mnuResverse, Me.mnuShowRoot})
    Me.mnuClient.Text = "客户管理"
    '
    'mnuAddClient
    '
    Me.mnuAddClient.Index = 0
    Me.mnuAddClient.Text = "&A添加客户"
    '
    'mnuModifyClient
    '
    Me.mnuModifyClient.Index = 1
    Me.mnuModifyClient.Text = "&M修改客户"
    '
    'mnuDelClient
    '
    Me.mnuDelClient.Index = 2
    Me.mnuDelClient.Text = "&D删除客户"
    '
    'mnuClientInfo
    '
    Me.mnuClientInfo.Index = 3
    Me.mnuClientInfo.Text = "&I查看客户详细信息"
    '
    'mnuSplit1
    '
    Me.mnuSplit1.Index = 4
    Me.mnuSplit1.Text = "-"
    '
    'mnuSearchClient
    '
    Me.mnuSearchClient.Index = 5
    Me.mnuSearchClient.Text = "&S查找客户"
    '
    'mnuSplit2
    '
    Me.mnuSplit2.Index = 8
    Me.mnuSplit2.Text = "-"
    '
    'mnuShowInGroup
    '
    Me.mnuShowInGroup.Checked = True
    Me.mnuShowInGroup.Index = 9
    Me.mnuShowInGroup.Shortcut = System.Windows.Forms.Shortcut.CtrlG
    Me.mnuShowInGroup.Text = "&G分组显示"
    '
    'mnuResverse
    '
    Me.mnuResverse.Checked = True
    Me.mnuResverse.Index = 10
    Me.mnuResverse.Shortcut = System.Windows.Forms.Shortcut.CtrlR
    Me.mnuResverse.Text = "&R显示子客户类型中的客户"
    '
    'mnuShowRoot
    '
    Me.mnuShowRoot.Checked = True
    Me.mnuShowRoot.Index = 11
    Me.mnuShowRoot.Text = "&F显示所有客户结点"
    '
    'mnuWarning
    '
    Me.mnuWarning.Index = 3
    Me.mnuWarning.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.mnuShowWarn, Me.mnuSplitter3, Me.mnuWarnSetting})
    Me.mnuWarning.Text = "提醒管理"
    '
    'mnuShowWarn
    '
    Me.mnuShowWarn.Index = 0
    Me.mnuShowWarn.Text = "&T查看今日提醒"
    '
    'mnuSplitter3
    '
    Me.mnuSplitter3.Index = 1
    Me.mnuSplitter3.Text = "-"
    '
    'mnuWarnSetting
    '
    Me.mnuWarnSetting.Index = 2
    Me.mnuWarnSetting.Text = "&S查看提醒设置"
    '
    'MenuItem7
    '
    Me.MenuItem7.Index = 4
    Me.MenuItem7.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.mnuOnlineSupport, Me.MenuItem10, Me.mnuAbout})
    Me.MenuItem7.Text = "帮助(&H)"
    '
    'mnuOnlineSupport
    '
    Me.mnuOnlineSupport.Index = 0
    Me.mnuOnlineSupport.Text = "在线支持(&O)"
    '
    'MenuItem10
    '
    Me.MenuItem10.Index = 1
    Me.MenuItem10.Text = "-"
    '
    'mnuAbout
    '
    Me.mnuAbout.Index = 2
    Me.mnuAbout.Text = "关于(&A)"
    '
    'mnuSendEmail
    '
    Me.mnuSendEmail.Index = 7
    Me.mnuSendEmail.Text = "&E发送邮件"
    '
    'MenuItem1
    '
    Me.MenuItem1.Index = 6
    Me.MenuItem1.Text = "-"
    '
    'frmMain
    '
    Me.AcceptButton = Me.cmdSearch
    Me.AutoScaleBaseSize = New System.Drawing.Size(6, 14)
    Me.CancelButton = Me.cmdBack
    Me.ClientSize = New System.Drawing.Size(739, 570)
    Me.Controls.Add(Me.splitLeft)
    Me.Controls.Add(Me.tlvClient)
    Me.Controls.Add(Me.StatusBar1)
    Me.Controls.Add(Me.xplSearch)
    Me.Controls.Add(Me.trvType)
    Me.Controls.Add(Me.palLoginInfo)
    Me.Controls.Add(Me.tbMain)
    Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
    Me.Menu = Me.MainMenu2
    Me.MinimumSize = New System.Drawing.Size(600, 300)
    Me.Name = "frmMain"
    Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
    Me.Text = "特瑞飞客户管理系统V2.0"
    Me.palLoginInfo.ResumeLayout(False)
    CType(Me.stbInfo, System.ComponentModel.ISupportInitialize).EndInit()
    CType(Me.stbLogo, System.ComponentModel.ISupportInitialize).EndInit()
    CType(Me.stdCapsLock, System.ComponentModel.ISupportInitialize).EndInit()
    CType(Me.stbPanalNum, System.ComponentModel.ISupportInitialize).EndInit()
    Me.xplSearch.ResumeLayout(False)
    Me.XPanderBaseSearch.ResumeLayout(False)
    Me.XPanderAdvSearch.ResumeLayout(False)
    Me.ResumeLayout(False)

  End Sub

#End Region


#Region "窗体控件初始化代码"

  Private Sub UpdateSearchCombo()
    Dim ErrMsg As String
    ErrMsg = mdlTreeView.TypesToTreeView(tcboType.TreeDropDown, True)
    tcboType.Value = "所有类型"

  End Sub

#End Region

#Region "实用函数"

  Private Sub InitForm()
    '初始化客户类别树
    'Me.trvType.Nodes.Clear()
    TypesToTreeView(Me.trvType, True)

    '初始化客户列表
    mdlListView.ClientsToListView(tlvClient, 0, m_bShowInGroup, m_bResverse, m_bShowRoot)

    labLoginedDept.Text = LoginedUserInfo.m_szRoleName & " - " & LoginedUserInfo.m_szTrueName

    '初始化查询窗体
    UpdateSearchCombo()
    XPanderAdvSearch.Collapse()

  End Sub

  Private Sub ShowAbout(ByVal bShow As Boolean)
    Dim frm As New frmAbout
    frm.ShowDialog()
  End Sub

  Private Sub UpdateCmdUI()
    '如果当前选种的是根结点,则禁止一些必要的操作
    Dim IsEnabledByTreeView As Boolean = False
    If Not trvType.SelectedNode Is Nothing Then
      IsEnabledByTreeView = (trvType.SelectedNode.Tag > 0)
      '受IsEnabledByTreeroot控制的控件
      Me.mnuModifyClientType.Enabled = IsEnabledByTreeView
      Me.mnuDelClientType.Enabled = IsEnabledByTreeView

      Me.mnuCtModify.Enabled = IsEnabledByTreeView
      Me.mnuCtDel.Enabled = IsEnabledByTreeView

      Me.mnuTvcmModifyType.Enabled = IsEnabledByTreeView
      Me.mnuTvcmDeleteType.Enabled = IsEnabledByTreeView
    End If

    '如果客户列表没有选种任何元素,则禁止一些必要的操作
    Dim IsEnabledByListView As Boolean = False
    If Not tlvClient.SelectedItems Is Nothing Then
      IsEnabledByListView = (tlvClient.SelectedItems.Count > 0)
      '受IsEnabledByListView控制的控件
      Me.mnuModifyClient.Enabled = IsEnabledByListView
      Me.mnuDelClient.Enabled = IsEnabledByListView
      Me.mnuClientInfo.Enabled = IsEnabledByListView

      Me.tbnModifyClient.Enabled = IsEnabledByListView
      Me.tbnDeleteClient.Enabled = IsEnabledByListView
      Me.tbnClientInfo.Enabled = IsEnabledByListView
    End If

    Me.mnuShowInGroup.Checked = Me.m_bShowInGroup
    Me.mnuResverse.Checked = Me.m_bResverse
    Me.mnuShowRoot.Checked = Me.m_bShowRoot

  End Sub

  Private Sub DoSearchAction()
    Dim iTypeId As Integer = 0
    Dim strName As String = ""
    Dim strTel As String = ""
    Dim ErrMsg As String = "有错误发生"
    Dim iClientCount As Integer = 0

    '获取搜索参数
    If chkClientType.Checked Then
      Try
        iTypeId = tcboType.TreeDropDown.SelectedNode.Tag
      Catch ex As Exception
        iTypeId = 0
      End Try
    End If
    If chkName.Checked Then
      strName = txtName.Text
    End If
    If chkPhone.Checked Then
      strTel = txtPhone.Text
    End If
    Me.m_bShowInGroup = chkShowInGroup.Checked
    Me.m_bResverse = chkResverse.Checked

    '开始搜索
    iClientCount = mdlListView.ClientsToListView(tlvClient, iTypeId, _
                                  m_bShowInGroup, m_bResverse, m_bShowRoot, _
                                  strName, strTel, "搜索结果")
    '    If ErrMsg <> "" Then
    '   MsgBox(ErrMsg, MsgBoxStyle.Critical + MsgBoxStyle.OKOnly)
    '  End If

    labResult.Text = "本次查询为您找到" & iClientCount & "条信息"
    labResult1.Visible = True
    labResult.Visible = True

    '更新控件
    UpdateCmdUI()
  End Sub
#End Region

  ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
#Region "' 客户类型管理操作函数"


  '添加客户类型
  Private Sub AddClientType()
    Dim strName As String
    '输入客户类型名称
    strName = Trim(InputBox("请输入客户类型名称:"))
    If strName = "" Then Exit Sub

    Dim ErrMsg As String
    Dim typeObj As New clientMgrBusiness.ClientType
    Dim dmParentType As New clientMgrBusiness.ClientTypeDataModel
    Dim dmType As New clientMgrBusiness.ClientTypeDataModel
    '获取客户类型树上选中的客户类型信息
    ErrMsg = mdlTreeView.GetSelectedType(dmParentType, trvType)

    '组织ClientTypeDataModel
    dmType.SuperID = dmParentType.ID
    dmType.TypeName = strName

    '更新数据库
    ErrMsg = typeObj.AddNew(dmType)
    If ErrMsg = "" Then
      ErrMsg = mdlTreeView.AddTypeToTreeView(dmType, trvType)
    Else
      MsgBox(ErrMsg, MsgBoxStyle.Critical + MsgBoxStyle.OKOnly)
    End If

  End Sub

  '修改客户类型
  Private Sub ModifyClientType()
    Dim strName As String

    Dim ErrMsg As String = ""
    Dim typeObj As New clientMgrBusiness.ClientType
    Dim dmType As New clientMgrBusiness.ClientTypeDataModel

    '获取客户类型树上选中的客户类型信息
    ErrMsg = mdlTreeView.GetSelectedType(dmType, trvType)
    If ErrMsg <> "" Then
      MsgBox(ErrMsg, MsgBoxStyle.Critical + MsgBoxStyle.OKOnly)
      Exit Sub
    End If

    '默认显示原客户类型的客户类型名称
    strName = Trim(InputBox("请输入新的客户类型名称:", , dmType.TypeName))
    If strName = "" Then Exit Sub

    dmType.TypeName = strName
    '更新数据库
    ErrMsg = typeObj.Update(dmType)
    If ErrMsg = "" Then
      trvType.SelectedNode.Text = strName
    Else
      MsgBox(ErrMsg, MsgBoxStyle.Critical + MsgBoxStyle.OKOnly)
    End If

  End Sub

  '删除客户类型
  Private Sub DelCientType()

    Dim ErrMsg As String = ""
    Dim typeObj As New clientMgrBusiness.ClientType
    Dim dmType As New clientMgrBusiness.ClientTypeDataModel

    If MsgBox("真的要删除客户类型吗?", MsgBoxStyle.Question + MsgBoxStyle.YesNo + MsgBoxStyle.DefaultButton2) = MsgBoxResult.No Then Exit Sub

    '获取客户类型树上选中的客户类型信息
    ErrMsg = mdlTreeView.GetSelectedType(dmType, trvType)
    If ErrMsg <> "" Then
      MsgBox(ErrMsg, MsgBoxStyle.Critical + MsgBoxStyle.OKOnly)
      Exit Sub
    End If

    '更新数据库
    ErrMsg = typeObj.Delete(dmType.ID)
    If ErrMsg = "" Then
      trvType.SelectedNode.Remove()
    Else
      MsgBox(ErrMsg, MsgBoxStyle.Critical + MsgBoxStyle.OKOnly)
    End If
  End Sub
#End Region


  ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
#Region "' 客户管理操作函数"


  '添加客户
  Private Sub AddClient()
    Dim dmClient As New clientMgrBusiness.ClientDataModel
    Dim frm As New frmClient
    '显示添加客户对话框并获取数据
    If frm.RetriveClient(dmClient, clientMgrBusiness.dmViewType.vtadd, trvType.SelectedNode.Tag) = False Then
      Exit Sub
    End If
    '更新数据库
    Dim ErrMsg As String
    Dim clientObj As New clientMgrBusiness.Client
    ErrMsg = clientObj.AddNew(dmClient)
    If ErrMsg = "" Then
      'mdlListView.AddClientToLvw(dmClient, tlvClient)
      Dim iTypeId As Integer
      If trvType.SelectedNode Is Nothing Then
        iTypeId = 0
      Else
        iTypeId = trvType.SelectedNode.Tag
      End If
      mdlListView.ClientsToListView(tlvClient, iTypeId, m_bShowInGroup, m_bResverse, m_bShowRoot)
    Else
      MsgBox(ErrMsg, MsgBoxStyle.Critical + MsgBoxStyle.OKOnly)
    End If

  End Sub

  '修改客户信息
  Private Sub ModifyClient()
    Dim dmClient As New clientMgrBusiness.ClientDataModel
    Dim warnObj As New clientMgrBusiness.Warning

    '从客户列表中获取选中客户信息
    If GetClientFromListView(dmClient, tlvClient) <> "" Then
      Exit Sub
    End If
    '显示修改客户信息对话框
    Dim frm As New frmClient
    If frm.RetriveClient(dmClient, clientMgrBusiness.dmViewType.vtModify) = False Then
      Exit Sub
    End If

    '更新数据库
    Dim ErrMsg As String
    Dim clientObj As New clientMgrBusiness.Client
    ErrMsg = clientObj.Update(dmClient)
    If ErrMsg = "" Then

⌨️ 快捷键说明

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