📄
字号:
lvListView.ColumnHeaders.Add 1, "rcsw", tvTreeView.SelectedItem.Text, 3000, , "stb"
Do While Not Xtgnbrec.EOF
Set mitem = lvListView.ListItems.Add()
mitem.Text = Trim(Xtgnbrec!gnmc)
If Xtgnbrec.Fields("mjbz") Then
mitem.SmallIcon = "gnqx"
mitem.Icon = "y"
Else
mitem.Icon = "i"
mitem.SmallIcon = "stb"
End If
mitem.Key = "T" & Trim(Xtgnbrec!gnbm)
Xtgnbrec.MoveNext
Loop
'---------------
End If
End If
End If
End Sub
Private Sub lvListView_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
Call lvListView_DblClick
End If
End Sub
Private Sub tvTreeView_NodeClick(ByVal Node As MSComctlLib.Node)
Dim Ssql As String
If Node.Tag <> "" Then
If Node.Tag = False Then
Ssql = "SELECT * FROM xt_xtgnb where sjgnbm='" + Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1) + "' and MenuList=1 order by gnbm"
If sjgnbmStr = Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1) Then
Exit Sub
Else
sjgnbmStr = Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1)
End If
Else
Ssql = "SELECT * FROM xt_xtgnb a," _
& "(SELECT sjgnbm FROM xt_xtgnb where gnbm='" + Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1) + "')b" & " where a.sjgnbm=b.sjgnbm and MenuList=1 order by gnbm"
End If
Set Xtgnbrec = Cw_DataEnvi.DataConnect.Execute(Ssql)
If Node.Tag = True Then
If sjgnbmStr = Trim(Xtgnbrec!sjgnbm) Then
Exit Sub
Else
sjgnbmStr = Trim(Xtgnbrec!sjgnbm)
End If
End If
lvListView.ColumnHeaders.Clear
lvListView.ListItems.Clear
lvListView.ColumnHeaders.Add 1, "rcsw", "明细", 3000, , "stb"
Do While Not Xtgnbrec.EOF
Set mitem = lvListView.ListItems.Add()
mitem.Text = Trim(Xtgnbrec!gnmc)
If Xtgnbrec.Fields("mjbz") Then
mitem.SmallIcon = "gnqx"
mitem.Icon = "y"
Else
mitem.Icon = "i"
mitem.SmallIcon = "stb"
End If
mitem.Key = "T" & Trim(Xtgnbrec!gnbm)
Xtgnbrec.MoveNext
Loop
End If
End Sub
Public Sub Cshgns() '初始化系统功能树
Set Xtgnbrec = Cw_DataEnvi.DataConnect.Execute("SELECT * FROM xt_xtgnb where gnbm like '07%' and MenuList=1 order by gnbm")
tvTreeView.Nodes.Add , 4, "T", "百利/ERP5.0", "xttb"
With Xtgnbrec
Do While Not .EOF
If .Fields("mjbz") Then
Set nodX = tvTreeView.Nodes.Add("T" + Trim(.Fields("sjgnbm")), 4, "T" + Trim(.Fields("gnbm")), Trim(.Fields("gnmc")), "gnqx")
Else
If Trim(.Fields("sjgnbm")) = "" Then
Set nodX = tvTreeView.Nodes.Add("T" + Trim(.Fields("sjgnbm")), 4, "T" + Trim(.Fields("gnbm")), Trim(.Fields("gnmc")), "kpgl")
Else
Set nodX = tvTreeView.Nodes.Add("T" + Trim(.Fields("sjgnbm")), 4, "T" + Trim(.Fields("gnbm")), Trim(.Fields("gnmc")), "stb")
End If
End If
nodX.Tag = Xtgnbrec!mjbz
If Len(Trim(.Fields("sjgnbm"))) <= 2 Then
nodX.EnsureVisible
End If
.MoveNext
Loop
End With
End Sub
'系统功能树操作
Private Sub tvTreeView_BeforeLabelEdit(Cancel As Integer) '屏蔽编辑
Cancel = 1
End Sub
Private Sub tvTreeView_Collapse(ByVal Node As MSComctlLib.Node) '功能树收缩
If Node.Index <> 1 And Node.Key <> "T07" Then
Node.Image = "stb"
End If
End Sub
Private Sub tvTreeView_Expand(ByVal Node As MSComctlLib.Node) '功能树展开
If Node.Index <> 1 And Node.Key <> "T07" Then
Node.Image = "szk"
End If
End Sub
Private Sub tvTreeView_KeyPress(KeyAscii As Integer) '用户按回车键执行相应功能
If KeyAscii = vbKeyReturn Then
Call tvTreeView_DblClick
End If
End Sub
Private Sub tvTreeView_DblClick() '选择功能
If tvTreeView.SelectedItem.Children = 0 Then
Set Xtgnbrec = Cw_DataEnvi.DataConnect.Execute("SELECT * FROM xt_xtgnb where gnbm='" + Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1) + "'")
If Not Xtgnbrec.EOF Then
gnsyte = Trim(Xtgnbrec.Fields("gnsy"))
Call Zxxymk(gnsyte)
End If
End If
End Sub
Public Sub Zxxymk(gnsy As String) '根据用户选择执行相应程序
Dim RecTemp As New ADODB.Recordset '临时使用动态集
Dim SqlStr As String '临时查询字符串
If Len(Trim(gnsy)) = 0 Then
Exit Sub
End If
On Error GoTo Cwcl:
Select Case gnsy
'文件
Case "Cb_register" '用户重新注册
XT_login.Show 1
Case "Cb_quit"
Unload XT_Main
'1.基础设置
Case "Cb_CostCenter" '成本中心
JC_FrmCostCenter.HelpContextID = 702001
JC_FrmCostCenter.Show 1
Case "Cb_CostItem" '成本项目
JC_FrmCostItem.HelpContextID = 702002
JC_FrmCostItem.Show 1
Case "Cb_CostObject" '成本对象
JC_FrmCostObject.HelpContextID = 702003
JC_FrmCostObject.Show 1
Case "Cb_CostStru" '成本结构
JC_FrmCostStructure.HelpContextID = 702004
JC_FrmCostStructure.Show 1
Case "Cb_GatherSet" '归集关系
JC_FrmGatherSet.HelpContextID = 702005
JC_FrmGatherSet.Show 1
Case "Cb_ScatterSet" '分配关系
JC_FrmScatterSet.HelpContextID = 702006
JC_FrmScatterSet.Show 1
'2.成本计算
Case "CB_Inventory" '月末盘存
JS_FrmInventory.HelpContextID = 703001
JS_FrmInventory.Show
Case "CB_ObjectComplete" '对象完工
JS_FrmObjectComplete.HelpContextID = 703002
JS_FrmObjectComplete.Show
Case "Cb_CostGather" '成本归集
JS_FrmCostGather.HelpContextID = 703003
JS_FrmCostGather.Show
Case "CB_CostScatter" '成本分配
JS_FrmCostScatter.HelpContextID = 703004
JS_FrmCostScatter.Show
'3.成本分析
Case "CB_CostReport" '成本明细
FX_FrmCostReport.HelpContextID = 704001
FX_FrmCostReport.Show
Case "CB_CostCollect" '成本汇总
FX_FrmCostCollect.HelpContextID = 704002
FX_FrmCostCollect.Show
'4.结转凭证
Case "CB_CostCarryForward" '结转成本
JZ_FrmTranList.HelpContextID = 705001
JZ_FrmTranList.TranClassCode = "01"
JZ_FrmTranList.Caption = "结转生产成本"
JZ_FrmTranList.Show 1
Case "CB_CostManuFactured" '结转成品
JZ_FrmTranList.HelpContextID = 705002
JZ_FrmTranList.TranClassCode = "02"
JZ_FrmTranList.TsLabel(6).Caption = "结转产成品"
JZ_FrmTranList.Caption = "结转产成品"
JZ_FrmTranList.Show 1
'工具
Case "Cb_gnbmkmrl" '会计日历
XT_kjrlFrm.HelpContextID = 706001
XT_kjrlFrm.Show 1
Case "Cb_gnbmjsq" '计算器
Shell "calc.exe", vbNormalFocus
'帮助
Case "Cb_wshxxd" '网上华夏新达
ShellExecute 0, "open", "www.hxxd.com", "", "", 0
Case "Cb_xtbz" '系统帮助
Call F1bz
Case "Cb_gy" '关于
XT_frmAbout.Show
End Select
Exit Sub
Cwcl:
Tsxx = "此项系统功能有待完善!"
Call Xtxxts(Tsxx, 0, 4)
Exit Sub
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) '用户关闭窗体
If Unload_TF = False Then
Cancel = 1
Me.WindowState = 1
End If
End Sub
Private Sub Form_Load()
'设置窗体图标
Me.Icon = XT_Main.Icon
'设置窗体位置大小,并调入系统功能树
Me.Left = 0
Me.Top = 0
Me.Width = XT_Main.Width - 60
Me.Height = XT_Main.Height - 760 - 690
Call Cshgns
'启动调入数据等待提示
Load Xt_Wait
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
Dim i As Integer
For i = Forms.count - 1 To 1 Step -1
Unload Forms(i)
Next
If Me.WindowState <> vbMinimized Then
SaveSetting App.Title, "Settings", "MainLeft", Me.Left
SaveSetting App.Title, "Settings", "MainTop", Me.Top
SaveSetting App.Title, "Settings", "MainWidth", Me.Width
SaveSetting App.Title, "Settings", "MainHeight", Me.Height
End If
SaveSetting App.Title, "Settings", "ViewMode", lvListView.View
End Sub
Private Sub Form_Resize()
On Error Resume Next
If Me.Width < 3000 Then Me.Width = 3000
SizeControls imgSplitter.Left
End Sub
Private Sub imgSplitter_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
With imgSplitter
picSplitter.Move .Left, .Top, .Width \ 2, .Height - 20
End With
picSplitter.Visible = True
mbMoving = True
End Sub
Private Sub imgSplitter_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim sglPos As Single
If mbMoving Then
sglPos = X + imgSplitter.Left
If sglPos < sglSplitLimit Then
picSplitter.Left = sglSplitLimit
ElseIf sglPos > Me.Width - sglSplitLimit Then
picSplitter.Left = Me.Width - sglSplitLimit
Else
picSplitter.Left = sglPos
End If
End If
End Sub
Private Sub imgSplitter_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
SizeControls picSplitter.Left
picSplitter.Visible = False
mbMoving = False
lvListView.Refresh
End Sub
Private Sub TreeView1_DragDrop(Source As Control, X As Single, Y As Single)
If Source = imgSplitter Then
SizeControls X
End If
End Sub
Sub SizeControls(X As Single)
On Error Resume Next
'设置 Width 属性
If X < 3500 Then X = 3500
If X > (Me.Width - 1500) Then X = Me.Width - 1500
tvTreeView.Width = X
imgSplitter.Left = X
lvListView.Left = X + 40
lvListView.Width = Me.Width - (tvTreeView.Width + 140)
lblTitle(0).Width = tvTreeView.Width
lblTitle(1).Left = lvListView.Left + 20
lblTitle(1).Width = lvListView.Width - 40
'设置 Top 属性
tvTreeView.Top = tbToolBar.Height + picTitles.Height
lvListView.Top = tvTreeView.Top
'设置 height 属性
tvTreeView.Height = Me.ScaleHeight - (picTitles.Top + picTitles.Height)
lvListView.Height = tvTreeView.Height
imgSplitter.Top = tvTreeView.Top
imgSplitter.Height = tvTreeView.Height
End Sub
Private Sub tbToolBar_ButtonClick(ByVal Button As MSComctlLib.Button)
On Error Resume Next
Select Case Button.Key
Case "返回"
tvTreeView.SetFocus
SendKeys "{up}", True
Case "向前"
tvTreeView.SetFocus
SendKeys "{DOWN}", True
Case "大图标"
lvListView.View = lvwIcon
Case "小图标"
lvListView.View = lvwSmallIcon
Case "列表"
lvListView.View = lvwList
Case "详细资料"
lvListView.View = lvwReport
End Select
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -