?? frmdispose.frm
字號:
VERSION 5.00
Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
Begin VB.Form frmDispose
BorderStyle = 3 'Fixed Dialog
Caption = "報損信息"
ClientHeight = 4470
ClientLeft = 2760
ClientTop = 3750
ClientWidth = 6360
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 4470
ScaleWidth = 6360
ShowInTaskbar = 0 'False
Begin VB.Frame fraMerchType
Caption = "報損信息"
Height = 3495
Left = 120
TabIndex = 8
Top = 240
Width = 6015
Begin VB.TextBox txtReason
Height = 735
Left = 1200
MaxLength = 255
MultiLine = -1 'True
ScrollBars = 2 'Vertical
TabIndex = 4
Text = "frmDispose.frx":0000
Top = 1680
Width = 4695
End
Begin VB.ComboBox cboMerchName
Height = 300
ItemData = "frmDispose.frx":000C
Left = 1200
List = "frmDispose.frx":000E
Style = 2 'Dropdown List
TabIndex = 0
Top = 300
Width = 1815
End
Begin VB.TextBox txtCount
Height = 350
Left = 1200
MaxLength = 8
TabIndex = 2
Text = "txtCount"
Top = 1200
Width = 1335
End
Begin VB.ComboBox cboUnit
Height = 300
ItemData = "frmDispose.frx":0010
Left = 2760
List = "frmDispose.frx":0017
Style = 2 'Dropdown List
TabIndex = 3
Top = 1230
Width = 1335
End
Begin VB.TextBox txtRemark
Height = 735
Left = 1200
MultiLine = -1 'True
ScrollBars = 2 'Vertical
TabIndex = 5
Text = "frmDispose.frx":0022
Top = 2520
Width = 4695
End
Begin MSComCtl2.DTPicker dtpRegDate
Height = 345
Left = 1200
TabIndex = 1
Top = 735
Width = 1815
_ExtentX = 3201
_ExtentY = 609
_Version = 393216
Format = 23068673
CurrentDate = 38263
End
Begin VB.Label Label8
AutoSize = -1 'True
Caption = "報損原因"
Height = 180
Left = 240
TabIndex = 13
Top = 1800
Width = 720
End
Begin VB.Label Label7
AutoSize = -1 'True
Caption = "報損數量"
Height = 180
Left = 240
TabIndex = 12
Top = 1320
Width = 720
End
Begin VB.Label Label3
AutoSize = -1 'True
Caption = "備注"
Height = 180
Left = 240
TabIndex = 11
Top = 2640
Width = 360
End
Begin VB.Label Label1
AutoSize = -1 'True
Caption = "報損商品"
Height = 180
Left = 240
TabIndex = 10
Top = 360
Width = 720
End
Begin VB.Label Label5
AutoSize = -1 'True
Caption = "統計時間"
Height = 180
Left = 240
TabIndex = 9
Top = 840
Width = 720
End
End
Begin VB.CommandButton OKButton
Caption = "確定"
Height = 330
Left = 3360
TabIndex = 7
Top = 3960
Width = 1215
End
Begin VB.CommandButton CancelButton
Caption = "取消"
Height = 330
Left = 4800
TabIndex = 6
Top = 3960
Width = 1215
End
End
Attribute VB_Name = "frmDispose"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Private OK As Boolean '確定用戶按了OK還是CANCEL按鈕
Private m_obj As clsDispose '數據對象,用來存儲用戶輸入數據
Public m_ViewType As gxcViewType '顯示狀態,指添加還是修改
Private m_TypeId As Long
Private m_Account As String '調用此對話框的操作員
'根據是“新增”還是修改,確定顯示內容
Private Sub SetStatus()
'設置控件默認值
Call SetDefaultValue
'設置狀態
Select Case m_ViewType
Case vtadd '添加
CancelButton.Visible = True
OKButton.Caption = "確定"
Case vtModify '修改
CancelButton.Visible = True
OKButton.Caption = "保存"
Case vtInfo '查看
CancelButton.Visible = False
OKButton.Caption = "關閉"
End Select
End Sub
'打開對話框,并傳出用戶輸入數據
Public Function ShowDlg(ByRef obj As Object, _
ByVal eViewType As gxcViewType, _
Optional nTypeId As Long = -1, _
Optional strUser As String = "") As Boolean
'保存數據
Set m_obj = obj '用戶輸入數據存放于此對象中
m_ViewType = eViewType '對話框狀態
If nTypeId = -1 And (Not m_obj Is Nothing) Then
m_TypeId = m_obj.TypeId
Else
m_TypeId = nTypeId
End If
m_Account = strUser '調用此對話框的用戶賬號
'根據新增、編輯或查看設置顯示內容
SetStatus
'顯示對話框
OK = False
Me.Show vbModal
If OK = False Then
ShowDlg = False
Exit Function
End If
'保存數據
Set obj = m_obj
'返回并釋放對話框
ShowDlg = True
Unload Me
End Function
'設置控件默認值
Private Sub SetDefaultValue()
Dim ctl As Control
Dim i As Integer
'如果是新增,則清空所有文本框
'此處判斷 m_obj為空與判斷m_ViewType = vtAdd等效,但更安全
If m_obj Is Nothing Then
For Each ctl In Controls
If TypeOf ctl Is TextBox Then
ctl.Text = ""
End If
Next
Else '用傳入對象的值更新數據
With m_obj
txtCount.Text = .Count
txtReason.Text = .Reason
txtRemark.Text = .Remark
cboUnit.ListIndex = 0
dtpRegDate.Value = .RegDate
For i = 0 To cboMerchName.ListCount - 1
If cboMerchName.ItemData(i) = .MerchandiseID Then
cboMerchName.ListIndex = i '客戶類型Id
Exit For
End If
Next i
End With
End If
End Sub
'檢查輸入有效性
Private Function CheckValid() As Boolean
CheckValid = False
If txtCount.Text = "" _
Or txtReason.Text = "" _
Or txtRemark.Text = "" Then
MsgBox "請填寫完畢以上各項內容"
Exit Function
End If
If cboMerchName.Text = "" Then
MsgBox "請填寫完畢以上各項內容"
Exit Function
End If
If Not IsNumeric(txtCount.Text) Then
MsgBox "數量請輸入數字"
Exit Function
End If
If Not IsDate(dtpRegDate.Value) Then
MsgBox "請輸入正確的日期格式"
Exit Function
End If
CheckValid = True
End Function
'保存數據
Private Sub SaveValue()
'給“成員變量”對象賦值
With m_obj
'注意以下利用RealString函數替換去除輸入中的單引號
.Count = txtCount.Text
.Reason = RealString(txtReason.Text)
.Remark = RealString(txtRemark.Text)
.MerchandiseID = cboMerchName.ItemData(cboMerchName.ListIndex) '商品類型Id
.MerchName = cboMerchName.Text
.RegDate = dtpRegDate.Value
.OperatorId = m_Account '操作者賬號
End With
End Sub
'取消按鈕
Private Sub CancelButton_Click()
Unload Me
End Sub
Private Sub Form_Load()
Dim opMerch As New clsOpMerch
opMerch.FillCombo cboMerchName
End Sub
'確定按鈕
Private Sub OKButton_Click()
OK = True
'檢測輸入有效性
If Not CheckValid Then Exit Sub
'如果是新增狀態,則初始化一個數據對象
If m_ViewType = vtadd Then Set m_obj = New clsDispose
'保存用戶輸入
SaveValue
Me.Hide
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -