以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 窗口事件问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=150793) |
||
-- 作者:0855yangjing -- 发布时间:2020/6/7 23:48:00 -- 窗口事件问题 烦请老师帮助,看看问题如何解决! With e.Form.Controls("Comhlh") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "回路号 = \'" & .Value & "\'" End If End With Dim dr As DataRow
dr = DataTables("报警设备定义").Find(Filter) If dr IsNot Nothing Then \'如果找到的话 MessageBox.Show("该回路已经存在,如果不要可以删除,若要增加回路,请重新输入!", "提示") Else Dim r As Row For i As Integer = 1 To 200 r = Tables("报警设备定义").addnew r("主机号") = e.form.controls("Comzjh").text r("回路号") = e.form.controls("Comhlh").text r("区域") = e.form.controls("Comqy").text. r("局域_栋号") = e.form.controls("Comdh").text. r("局域_单元") = e.form.controls("Comhdy").text. r("局域_裙楼") = e.form.controls("Comhql").checked. r("局域_商铺") = e.form.controls("CHsp").checked. r("局域_地下室") = e.form.controls("CHdxs").checked. r("局域_标准层") = e.form.controls("CHbjc").checked. r("范围_层数") = e.form.controls("Comhcs").text. r("范围_防火分区") = e.form.controls("Comhfq").text. r("一次码") = format(i,"000") Next MessageBox.Show("请急时对该回路的设备进行编辑!", "提示") End If [此贴子已经被作者于2020/6/8 13:16:50编辑过]
|
||
-- 作者:有点蓝 -- 发布时间:2020/6/8 8:40:00 -- 有什么问题?http://foxtable.com/bbs/dispbbs.asp?boardid=2&Id=150626 |
||
-- 作者:0855yangjing -- 发布时间:2020/6/8 13:19:00 -- 老师我调试的时候出现下面的对话框,看看如何解决! [此贴子已经被作者于2020/6/8 13:21:39编辑过]
|
||
-- 作者:有点蓝 -- 发布时间:2020/6/8 13:41:00 -- text后面有个多余的“.” r("区域") = e.form.controls("Comqy").text. |
||
-- 作者:0855yangjing -- 发布时间:2020/6/8 23:17:00 -- 老师,谢谢你了!我又碰上新问题,我在勾选检查框的时候,执行结果为空白的数据,另外我想在这四个勾选框中只能勾选其中一个,代码怎么修改才能实现呢?代码如下: Dim Filter As String With e.Form.Controls("Comzjh") If .Value IsNot Nothing Then Filter = "主机号 = \'" & .Value & "\'" End If End With With e.Form.Controls("Comhlh") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "回路号 = \'" & .Value & "\'" End If End With Dim dr As DataRow
dr = DataTables("报警设备定义").Find(Filter) If dr IsNot Nothing Then \'如果找到的话 MessageBox.Show("该回路已经存在,如果不要可以删除,若要增加回路,请重新输入!", "提示") Else Dim r As Row For i As Integer = 1 To 200 r = Tables("报警设备定义").addnew r("主机号") = e.form.controls("Comzjh").text r("回路号") = e.form.controls("Comhlh").text r("区域") = e.form.controls("Comqy").text r("局域_栋号") = e.form.controls("Comdh").text r("局域_单元") = e.form.controls("Comdy").text r("局域_裙楼") = e.form.controls("CHql").checked r("局域_商铺") = e.form.controls("CHsp").checked r("局域_地下室") = e.form.controls("CHdxs").checked r("局域_标准层") = e.form.controls("CHbjc").checked r("范围_层数") = e.form.controls("Comcs").text r("范围_防火分区") = e.form.controls("Comfq").text r("一次码") = format(i,"000") Next MessageBox.Show("请急时对该回路的设备进行编辑!", "提示") End If [此贴子已经被作者于2020/6/8 23:18:58编辑过]
|
||
-- 作者:0855yangjing -- 发布时间:2020/6/8 23:21:00 -- 窗口
[此贴子已经被作者于2020/6/8 23:23:57编辑过]
|
||
-- 作者:有点蓝 -- 发布时间:2020/6/9 8:31:00 -- 方法1、改为单选框 2、在每个checkedchanged事件把其它勾选去掉,如复选框1: if e.sender.checked then e.form.controls("复选框2").checked = false e.form.controls("复选框3").checked = false end if
|
||
-- 作者:0855yangjing -- 发布时间:2020/6/10 22:25:00 -- 解决了,谢谢老师了! |