首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

VB 批改窗体代码请求指正 俺是新手

2012-12-17 
VB修改窗体代码请求指正 俺是新手修改按钮Private Sub cmdModify_Click()strUserManage UserManage(2)I

VB 修改窗体代码请求指正 俺是新手
'修改按钮
Private Sub cmdModify_Click()
strUserManage = UserManage(2)
        If strUserManage = "ReadOnly" Then
            MsgBox "对不起,你是只读用户不能修改记录,请与管理员联系!", vbInformation + vbOKOnly, " 警告"
            Exit Sub
         End If
'声明ADODB.Recordset对象变量
    Dim rs As ADODB.Recordset
    strSQL = "select * from documents where 学号='" & flgDocData.Columns(0) & "'"
    'strSQL = "select * from documents where 学号='" & trvDocument.SelectedItem & "'"
    Set rs = ExecuteSQL(Trim(strSQL))
    Set Me.flgDocData.DataSource = rs
If rs.RecordCount > 0 Then
                
         '显示班级修改界面
        blnModifyDoc = True
        frmDocModify.Show
        frmDocModify.ZOrder 0
Else
        MsgBox "你还没有选择记录!", vbOKOnly + vbExclamation, "警告"
        Exit Sub
End If
End Sub

修改窗体:
Option Explicit

Dim strSQL As String

Private Sub comDocument_Click(Index As Integer) '组合框设置
    Dim objRecordset As ADODB.Recordset
    
    strSQL = "select 专业,年制 from Classes where 班级='" & Trim(comDocument(1).Text) & "'"
    Set objRecordset = ExecuteSQL(strSQL)
    objRecordset.Close
End Sub

Private Sub cmdOK_Click()
    Dim i As Integer
    Dim objRecordset As ADODB.Recordset
    
    '输入学生信息
    For i = 0 To 7
        If txtDocument(i) = "" Then
            MsgBox lblDocument(i).Caption & "不能为空!", vbExclamation + vbOKOnly, "警告"
            txtDocument(i).SetFocus
            txtDocument(i).SelStart = 0
            txtDocument(i).SelLength = Len(txtDocument(i).Text)
            Exit Sub
        End If
    Next
    
    '查找输入的学生信息是否存在
    strSQL = "select * from Documents where 学号='" & Trim(txtDocument(0).Text) & "'"
    Set objRecordset = ExecuteSQL(strSQL)
    '如果是登记新的学生信息,则该数据库中必须不存在该信息
    If blnModifyDoc = False Then


        If objRecordset.EOF = False Then
            MsgBox "已经存在该学号的记录,学号不能重复!", _
                    vbExclamation + vbOKOnly, "警告"
            txtDocument(0).SetFocus
            txtDocument(0).SelStart = 0
            txtDocument(0).SelLength = Len(txtDocument(0).Text)
            objRecordset.Close
            Exit Sub
        End If
    End If
    
    '判断是否日期格式
    If Not IsDate(txtDocument(2).Text) Then
        MsgBox "请输入日期 mm-dd-yy", vbInformation + vbOKOnly, "警告"
        txtDocument(2).SetFocus
        txtDocument(2).SelStart = 0
        txtDocument(2).SelLength = Len(txtDocument(2).Text)
        Exit Sub
    End If
    
    If Not IsDate(txtDocument(6).Text) Then
        MsgBox "请输入日期 mm-dd-yy", vbInformation + vbOKOnly, "警告"
        txtDocument(6).SetFocus
        txtDocument(6).SelStart = 0
        txtDocument(6).SelLength = Len(txtDocument(6).Text)
        Exit Sub
    End If
    
    '如果是修改新的学生信息
   

    
    '将新的学生信息登记到数据库
    strSQL = "select * from Documents "
    Set objRecordset = ExecuteSQL(strSQL)
    objRecordset.AddNew '对记录集数据的添加
    
    For i = 4 To 9
        objRecordset.Fields(i) = txtDocument(i - 2).Text '因为文本框与记录集对象的字段相差2
    Next i
    objRecordset.Fields(0) = Trim(txtDocument(0).Text)
    objRecordset.Fields(1) = Trim(txtDocument(1).Text)
    objRecordset.Fields(2) = Trim(comDocument(0).Text)
    objRecordset.Fields(3) = Trim(comDocument(1).Text)
    objRecordset.Update
    Set objRecordset = Nothing
    
    For i = 0 To 7
        txtDocument(i) = ""
    Next
End Sub

Private Sub cmdCancel_Click()
    Unload Me
End Sub




Private Sub Form_Load()
Dim a
Dim rs As ADODB.Recordset
Dim i As Integer




comDocument(0).AddItem "男"
comDocument(0).AddItem "女"
comDocument(0).Text = "男"
'comDocument(1).AddItem "0901"
'comDocument(1).AddItem "0902"
'comDocument(1).AddItem "1001"
'comDocument(1).Text = "1001"

strSQL = "select * from Documents"
 Set rs = ExecuteSQL(strSQL)
 rs.MoveFirst
  
   Do While Not rs.EOF
  'comDocument(0).AddItem rs.Fields(1)
    comDocument(1).AddItem rs.Fields(3)
 rs.MoveNext
 Loop
   comDocument(1).ListIndex = 1
   

a = Format(Now, "yyyy - mm - dd")
txtDocument(2).Text = a
txtDocument(6).Text = a
If blnModifyDoc = True Then '修改档案管理布尔变量
        strSQL = "select * from Documents where 班级='" & frmDocBrowse.trvDocument.SelectedItem & "'" '从档案表查询班级为档案预览表的树形框所选择的记录
        Set rs = ExecuteSQL(strSQL)
        txtDocument(0).Text = rs.Fields(0) '查询结果的赋值,
        txtDocument(1).Text = rs.Fields(1)
        For i = 4 To 9 '用FOR语句给文本框赋值
          txtDocument(i - 2).Text = rs.Fields(i)
          
        Next i
        comDocument(0).Text = rs.Fields(2)
        comDocument(1).Text = rs.Fields(3)
        txtDocument(0).Enabled = False
        txtDocument(1).Enabled = False
         For i = 2 To 6
             txtDocument(i).Text = ""
       Next i
Else
For i = 0 To 6
      txtDocument(i).Text = ""
Next i
End If

 
End Sub

Private Sub txtDocument_GotFocus(Index As Integer)
    If Index = 6 Then
        txtDocument(6).SelStart = 0
        txtDocument(6).SelLength = Len(txtDocument(6).Text)
    End If
End Sub
请求指正:修改不了  ,只能添加,
[解决办法]
就一个添删改査,LZ你整的这么??
Set objRecordset = ExecuteSQL(update TAble set XX = '')不就OK了
[解决办法]
具体 点好不

[解决办法]
一本课本里的

热点排行