以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]不用组合键达到输入助手的高级筛选功能 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=100988) |
||||
-- 作者:找到没重的名 -- 发布时间:2017/5/23 7:20:00 -- [求助]不用组合键达到输入助手的高级筛选功能 输入助手的高级筛选功能,必须通过ctrl+enter才能调用。但是我想实现输入任意字符不用通过组合键就直接出现列表的功能。 我看到有人提到这个问题,但回复是效率的问题,没有给出解决方法。我希望可以给出解决方法,哪怕是给个大概给个思路,让我可以用代码写出来。
|
||||
-- 作者:有点色 -- 发布时间:2017/5/23 9:07:00 -- 参考这个例子
http://www.foxtable.com/webhelp/scr/2465.htm
|
||||
-- 作者:有点色 -- 发布时间:2017/5/23 9:11:00 -- 试试这个
|
||||
-- 作者:找到没重的名 -- 发布时间:2017/7/22 10:32:00 -- 在这个例子里,有两段代码 都有+= 这样的写法
表A_ChangeEdit
If e.Col.Name =
"第一列" Then \'如果编辑的是客户ID列 If e.Col.DroppedDown Then \'如果下拉窗口已经打开 Dim items As String = "" For Each dr As DataRow In
DataTables("表B").Select("拼音 like \'*" & e.Text &
"*\'") items += dr("数据") &
"|" Next Dim lsx As WinForm.ListBox = Forms(e.Col.DropForm).Controls("ListBox1") lsx.ComboList =
items.Trim("|") End If
End If 我曾试着去掉上面代码 items += dr("数据") & "|"的加号 结果就不能正常显示列表了 请问老师 这个加号在此有何特殊作用? |
||||
-- 作者:有点蓝 -- 发布时间:2017/7/22 10:40:00 -- 这里+=是&=的意思,字符串的连接符可以使用&和+,区别是&可以自动转换类型,+不能用在数值和字符之间的连接 就是 a = a & 1 的意思,就是为了把字符串连接起来 [此贴子已经被作者于2017/7/22 10:58:22编辑过]
|
||||
-- 作者:找到没重的名 -- 发布时间:2017/7/22 10:47:00 -- 谢谢老师秒回复,我再揣摩一下。 |
||||
-- 作者:找到没重的名 -- 发布时间:2017/7/26 23:22:00 -- 这个例子中还有一段代码,当中-= 和 +=有什么特殊意义?我觉得和&有点不太一样,请老师解释下。 还有这两行代码 ElseIf e.KeyCode = Keys.Enter msgbox(1) 代码按下回车键,为什么是要弹出messagebox?可是当我按下回车键,也没有提示1啊?谢谢老师!
表A_KeyDownEdit
If e.Col.Name = "第一列" Then \'如果编辑的是客户 ID列 If e.Col.DroppedDown Then \'如果下拉窗口已经打开 Dim lsx As WinForm.ListBox = Forms(e.Col.DropForm).Controls("ListBox1")
If e.KeyCode = Keys.Up Then \'如果按下的是上箭头按键 If lsx.SelectedIndex > 0 Then lsx.SelectedIndex -= 1 End If e.Cancel = True ElseIf e.KeyCode = Keys.Down Then \'如果按下的是下箭头按键 If lsx.SelectedIndex < lsx.Items.Count - 1 Then lsx.SelectedIndex += 1 End If e.Cancel = True ElseIf e.KeyCode = Keys.Enter msgbox(1) End If End If End If
|
||||
-- 作者:有点甜 -- 发布时间:2017/7/26 23:26:00 -- += 1 或者 -= 1 是为了移动焦点选择下一行、上一行。
msgbox是测试代码,你可以删除。 |
||||
-- 作者:找到没重的名 -- 发布时间:2017/7/26 23:31:00 -- 谢谢老师! 我主要还是想知道,按了回车键应该 总应该执行一段代码,让所选结果赋值到单元格。为什么没有呢? 我知道msgbox(1) 是用来测试代码的,可我为什么按了回车键,不出现提示框1呢?
[此贴子已经被作者于2017/7/26 23:58:39编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2017/7/27 9:18:00 -- 回复9楼,这个是下拉窗口的问题,按下回车,默认是会触发关闭窗口的。无法在事件里控制。 |