以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于表中记录一增加保存时不可再编辑的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=85887)

--  作者:scofields
--  发布时间:2016/6/4 17:52:00
--  关于表中记录一增加保存时不可再编辑的问题
红袍老师,我想实现当表中增加保存记录时,不能随便修改,如果要修改的话,需输入指定的密码才可以修改,这个怎么写?写到哪个地方?跪谢
--  作者:大红袍
--  发布时间:2016/6/5 11:13:00
--  

StartEdit事件

 

If e.Row.DataRow.RowState = DataRowState.Unchanged Then
    Dim pwd As String
    If InputPassWord(pwd,"提示","请输入密码:") Then
        Messagebox.Show("您输入的密码是:" & pwd)
        If pwd <> "1234" Then
            Messagebox.Show("密码错误")
            e.cancel = True
        End If
    End If
End If


--  作者:scofields
--  发布时间:2016/6/5 11:40:00
--  
红袍老师,如果这段代码放入窗口的某个按钮里,比如说“解锁”,因为所有数据是通过窗口的Textbox与ComboBox控件录入,我的意思是修改记录前,指定的Textbox与ComboBox控件是不可用状态,单击“解锁”按钮输入密码后,就可以修改了。不好意思,第一遍,我没表述清楚。
--  作者:大红袍
--  发布时间:2016/6/5 13:03:00
--  

参考代码

 

Dim pwd As String
If InputPassWord(pwd,"提示","请输入密码:") Then
    Messagebox.Show("您输入的密码是:" & pwd)
    If pwd <> "1234" Then
        Messagebox.Show("密码错误")
    Else
        e.Form.controls("TextBox1").Enabled = True
        e.Form.controls("ComboBox1").Enabled = True
    End If
End If