Do While Not mrc.EOF语句错误
Option ExplicitPublic txtSQL As String
Dim mrc As ADODB.Recordset
Private Sub cmdAdd_Click()
gintKmode = 1
frmTicket1.Show 1
End Sub
Private Sub cmdDelete_Click()
Dim txtSQL As String
Dim intCount As Integer
Dim mrc As ADODB.Recordset
Dim MsgText As String
If msgList.Rows > 1 Then
If MsgBox("真的要删除顾客" & Trim(msgList.TextMatrix(msgList.Row, 3)) & Trim(msgList.TextMatrix(msgList.Row, 9)) & "从" & Trim(msgList.TextMatrix(msgList.Row, 7)) & "到" & Trim(msgList.TextMatrix(msgList.Row, 8)) & "的机票吗?", vbOKCancel + vbExclamation, "警告") = vbOK Then
intCount = msgList.Row
txtSQL = "delete from ticketInfo where ticketNO ='" & Trim(msgList.TextMatrix(intCount, 1)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
Unload frmTicket
frmTicket.txtSQL = "select * from ticketInfo"
frmTicket.Show
End If
End If
End Sub
Private Sub cmdModify_Click()
Dim intCount As Integer
If frmTicket.msgList.Rows > 1 Then
gintKmode = 2
intCount = msgList.Row
If intCount > 0 Then
frmTicket1.txtSQL = "select * from ticketInfo where ticketNO ='" & Trim(msgList.TextMatrix(intCount, 1)) & "'"
frmTicket1.Show 1
Else
MsgBox "警告", vbOKOnly + vbExclamation, "请首先选择需要修改的纪录!"
End If
End If
End Sub
Private Sub Command3_Click()
frmTicket2.Show 1
End Sub
Private Sub Form_Load()
ShowTitle
ShowData
End Sub
Private Sub Form_Resize()
If Me.WindowState <> vbMinimized And fMainForm.WindowState <> vbMinimized Then
'边界处理
If Me.ScaleHeight < 10 * lblTitle.Height Then
Exit Sub
End If
If Me.ScaleWidth < lblTitle.Width + lblTitle.Width / 2 Then
Exit Sub
End If
'控制控件的位置
lblTitle.Top = lblTitle.Height
lblTitle.Left = (Me.Width - lblTitle.Width) / 2
msgList.Top = lblTitle.Top + lblTitle.Height + lblTitle.Height / 2
msgList.Width = Me.ScaleWidth - 200
msgList.Left = Me.ScaleLeft + 100
msgList.Height = Me.ScaleHeight - msgList.Top - 1500
Frame2.Top = msgList.Top + msgList.Height + 50
Frame2.Left = Me.ScaleWidth / 2 - 3000
End If
End Sub
Public Sub FormClose()
Unload Me
End Sub
Private Sub ShowData()
Dim j As Integer
Dim i As Integer
Dim MsgText As String
Set mrc = ExecuteSQL(txtSQL, MsgText)
With msgList
.Rows = 1
Do While Not mrc.EOF
.Rows = .Rows + 1
For i = 1 To mrc.Fields.Count
If Not IsNull(Trim(mrc.Fields(i - 1))) Then
Select Case mrc.Fields(i - 1).Type
Case adDBDate
.TextMatrix(.Rows - 1, i) = Format(mrc.Fields(i - 1) & "", "yyyy-mm-dd")
Case Else
.TextMatrix(.Rows - 1, i) = mrc.Fields(i - 1) & ""
End Select
End If
Next i
mrc.MoveNext
Loop
End With
mrc.Close
End Sub
'显示Grid表头
Private Sub ShowTitle()
Dim i As Integer
With msgList
.Cols = 14
.TextMatrix(0, 1) = ""
.TextMatrix(0, 2) = ""
.TextMatrix(0, 3) = "顾客姓名"
.TextMatrix(0, 4) = "顾客类型"
.TextMatrix(0, 5) = "折扣比例"
.TextMatrix(0, 6) = ""
.TextMatrix(0, 7) = "出发城市"
.TextMatrix(0, 8) = "到达城市"
.TextMatrix(0, 9) = "出发时间"
.TextMatrix(0, 10) = "舱位类别"
.TextMatrix(0, 11) = "票价"
.TextMatrix(0, 12) = "结算金额"
.TextMatrix(0, 13) = "备注信息"
'固定表头
.FixedRows = 1
'设置各列的对齐方式
For i = 0 To 13
.ColAlignment(i) = 0
Next i
'表头项居中
.FillStyle = flexFillRepeat
.Col = 0
.Row = 0
.RowSel = 1
.ColSel = .Cols - 1
.CellAlignment = 4
'设置单元大小
.ColWidth(0) = 1000
.ColWidth(1) = 0
.ColWidth(2) = 0
.ColWidth(3) = 1000
.ColWidth(4) = 1000
.ColWidth(5) = 1000
.ColWidth(6) = 0
.ColWidth(7) = 1000
.ColWidth(8) = 1000
.ColWidth(9) = 1000
.ColWidth(10) = 1000
.ColWidth(11) = 1000
.ColWidth(12) = 1000
.ColWidth(13) = 2000
.Row = 1
End With
End Sub
Private Sub msgList_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
'右键弹出
If Button = 2 And Shift = 0 Then
End If
End Sub