以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 窗体部分不能录入 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=120251) |
-- 作者:malavazos -- 发布时间:2018/6/11 9:53:00 -- 窗体部分不能录入 开始窗体中没有表控件是可以正常的录入。但是加入了表空间后,在记录控件中就无法录入内容了,只能在表控件中录入内容。不知这是什么原因请老师帮忙! |
-- 作者:有点甜 -- 发布时间:2018/6/11 9:57:00 -- 1、你有没有锁定行、锁定表?锁定以后,表格和绑定的控件都是不能编辑的。
2、你窗口afterLoad、enter事件有没有写控制的代码? |
-- 作者:malavazos -- 发布时间:2018/6/11 9:57:00 -- 当前的修改位置,只能在表控件中,不能落在左面的任何文本框上? |
-- 作者:有点甜 -- 发布时间:2018/6/11 9:58:00 -- 1、你有没有锁定行、锁定表?锁定以后,表格和绑定的控件都是不能编辑的。
2、你窗口afterLoad、enter事件有没有写控制的代码? |
-- 作者:malavazos -- 发布时间:2018/6/11 10:21:00 -- 下面是窗口的控件代码: 窗口表事件 窗口与控件事件 维修工单录入_AfterLoad Tables("维修工单录入").AllowEdit = False 维修工单录入_Button1_Click With Tables("维修工单录入") .Position = .Position - 1 End With CurrentTable.AllowAddNew = False 维修工单录入_Button2_Click With Tables("维修工单录入") .Position = .Position + 1 End With Tables("维修工单录入").AllowEdit = False 维修工单录入_Button3_Click Tables("维修工单录入").AllowEdit = False 维修工单录入_Button4_Click Tables("维修工单录入").AddNew() Tables("维修工单录入").AllowEdit = True CurrentTable.AllowAddNew = True 维修工单录入_Button5_Click Tables("维修工单录入").AllowEdit = True 维修工单录入_Button6_Click Tables("维修工单录入").Current.Delete 维修工单录入_Button7_Click Forms("维修工单录入").close() 维修工单录入_Enter Tables("维修工单录入").sort = "填表日期 desc " 维修工单录入_Leave DataTables("维修工单录入").Save(True) 维修工单录入_TextBox9_Click Tables("维修工单录入").Cols("维修满意程度").ComboList = DataTables("维修工单录入").GetComboListString("维修满意程度") |
-- 作者:有点甜 -- 发布时间:2018/6/11 10:24:00 -- 如果你执行了这个代码
Tables("维修工单录入").AllowEdit = False
那么,这个表、对应的控件,都是不能编辑的。 |
-- 作者:malavazos -- 发布时间:2018/6/11 10:46:00 -- 我已经将所有的不允许修改的命令删除了,可是光标仍然不能落在左边的文本框中。 前面的智能在表控件中修改?(现在依旧)
|
-- 作者:有点甜 -- 发布时间:2018/6/11 10:53:00 -- 如果把表控件删除或者隐藏,就能编辑了?如果是,看看你表控件事件写了什么影响的代码导致的(屏蔽各个表事件) |
-- 作者:malavazos -- 发布时间:2018/6/11 11:18:00 -- 表事件中,仅涉及维修工单录入表。具体全部表时间如下: 表事件 维修工单录入_AfterLoad Tables("维修工单录入").sort = "填表日期 desc " Tables("维修工单录入").filter = "填表日期 >= #" & Date.Today.Adddays(-60) & "# " 设备台帐表_AfterLoad Tables("设备台帐表").Sort = "_Identify DESC" 计量计划_DataColChanged Dim dc As DataCol = e.DataCol Dim dr As DataRow = e.DataRow If dc.Name = "本年实际检定日期" OrElse dc.Name = "周期天数" Then If dr.IsNull("本年实际检定日期") OrElse dr.IsNull("周期天数") Then dr("下一年检定日期") = Nothing Else dr("下一年检定日期") = dr("本年实际检定日期").AddDays(dr("周期天数")) dr("Last") = True End If End If 计量计划_DrawCell If e.Col.Name = "本年计划检定日期" Then If e.Row.IsNull("本年计划检定日期") = False AndAlso e.Row.IsNull("本年实际检定日期") = True If e.Row("本年计划检定日期") < Date.Today.AddDays(10) Then e.Style = "到期提醒" End If End If End If If e.Col.Name = "本年计划检定日期" Then If e.Row.IsNull("本年计划检定日期") = False AndAlso e.Row.IsNull("本年实际检定日期") = False If e.Row("本年计划检定日期") < Date.Today.AddDays(10) Then e.Style = "检定完成" End If End If End If 检定流水记录_DataColChanged If e.DataCol.Name = "状态" Then \'如果内容发生变动的是品名列 \' If e.NewValue Is Nothing Then \'如果新值是空白,也就是品名列的内容为空 \' e.DataRow("状态") = Nothing \'那么清空此行单价列的内容 \' Else Dim dr As DataRow Dim da As DataRow \'否则在产品表查找同名的产品行,将找到的行赋值给变量dr \' dr = DataTables("计量计划").Find("[id] = \'" & e.NewValue & "\'") dr = DataTables("计量计划").Find("[id] = \'" & e.DataRow("id") & "\'") da = DataTables("计量台帐").Find("[校准编号] = \'" & e.DataRow("校准编号") & "\'") If dr IsNot Nothing Then \'如果找到了同名的产品行,也就是dr不是Nothing dr("状态") = e.DataRow("状态") da("状态") = e.DataRow("状态") End If \' End If End If |
-- 作者:有点甜 -- 发布时间:2018/6/11 11:26:00 -- 贴出的代码都没问题,请单独做一个例子发上来测试。 |