以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 可否将数据表作为列表引申实现这样的功能 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=15753) |
||||
-- 作者:coolbbs -- 发布时间:2012/1/10 12:58:00 -- 可否将数据表作为列表引申实现这样的功能 想实现以下效果 第一列已经录入内容,第二列在录入内容时按下F3键 弹出列表窗口实现加载 行政区域表 省市 LIKE 第一列 and 县市 like 第二列正在输入的内容的行 ,点选后表A的第一列内容=点选列的省市 第二列内容=点选的县市列 ChangeEdit事件代码设置成这样会出错 【第一列已输入内容,数据录入光标现在是第二列】 If Forms("窗口1").Opened Then Dim txt As String = e.Text Dim abc As String =CurrentTable.Current("第一列") Dim tbl As Table = Tables("窗口1_Table1") If txt = "" Then tbl.Filter = "" Else If txt.contains("*") txt = "\'*" & txt.replace("*","[*]") & "*\'" \' Else txt = "\'*" & txt & "*\'" End If tbl.Filter = "省市 Like " & txt & " and 县市 Like " & abc & "" End If End If
![]() ![]() [此贴子已经被作者于2012-1-10 13:03:40编辑过]
|
||||
-- 作者:blackzhu -- 发布时间:2012/1/10 13:22:00 -- If Forms("窗口1").Opened Then Dim txt As String = e.Text Dim abc As String =CurrentTable.Current("第二列") Dim tbl As Table = Tables("窗口1_Table1") If txt = "" Then tbl.Filter = "" Else If txt.contains("*") txt = "\'*" & txt.replace("*","[*]") & "*\'" \' Else txt = "\'*" & txt & "*\'" End If tbl.Filter = "省市 Like " & txt & " And 县市 Like \'*" & abc & "*\'" End If End If |
||||
-- 作者:coolbbs -- 发布时间:2012/1/10 15:16:00 -- 终于可以实现在第二列编辑时按下F3出列表窗口功能了,但是无法实现tbl.Filter = "省市 Like " & txt & " And 县市 Like \'*" & abc & "*\'" 这一功能 最终想实现 第一列已经录入内容,第二列在录入内容时按下F3键 弹出列表窗口实现加载 行政区域表 省市 LIKE 第一列 and 县市 like 第二列正在输入的内容的行 请教各位修改代码成怎么样能实现? 以下为使用的表属性事件及代码 ------------------------------------------------------- 保留AfterEdit Forms("窗口1").Close() -------------------------------------------------------- 新增表事件 \'表事件-KeyDownEdit If e.Col.Name = "第二列" Then If e.keycode = keys.f3 Forms("窗口1").open() End If End If If Forms("窗口1").Opened Then Dim txt As String = e.Text Dim abc As String =CurrentTable.Current("第一列") Dim tbl As Table = Tables("窗口1_Table1") If txt = "" Then tbl.Filter = "" Else If txt.contains("*") txt = "\'*" & txt.replace("*","[*]") & "*\'" \' Else txt = "\'*" & txt & "*\'" End If tbl.Filter = "省市 Like " & abc & " and 县市 Like \'*" & txt & "*\'" End If End If [此贴子已经被作者于2012-1-10 15:49:53编辑过]
|
||||
-- 作者:coolbbs -- 发布时间:2012/1/10 15:58:00 -- 改后的项目上传 ,各位帮忙改一下 Dim abc As String =CurrentTable.Current("第一列") abc好像取不到第一列的值
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2012/1/10 16:13:00 -- \'表事件-编辑-KeyDownEdit If e.Col.Name = "第二列" Then If e.keycode = keys.f3 Forms("窗口1").open() End If End If If Forms("窗口1").Opened Then Dim txt As String = e.Text Dim abc As String = e.Row("第一列") Dim tbl As Table = Tables("窗口1_Table1") Dim flt As String If txt > "" Then If txt.contains("*") txt = "\'*" & txt.replace("*","[*]") & "*\'" \' Else txt = "\'*" & txt & "*\'" End If flt = "县市 Like " & txt End If If abc > "" Then If abc.contains("*") abc = "\'*" & abc.replace("*","[*]") & "*\'" \' Else abc = "\'*" & abc & "*\'" End If If flt > "" Then flt = flt & " And " End If flt = flt & "省市 Like " & abc End If tbl.Filter = flt End If |