Foxtable(狐表)用户栏目专家坐堂 → 帮助文档一页咨询


  共有2119人关注过本帖树形打印复制链接

主题:帮助文档一页咨询

帅哥哟,离线,有人找我吗?
kolen
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:677 积分:6228 威望:0 精华:0 注册:2012/1/20 17:53:00
帮助文档一页咨询  发帖心情 Post By:2016/8/23 11:57:00 [只看该作者]

帮助文档这里,有问题吧!看不懂,请老师帮我看下,谢谢!

本页地址:http://www.foxtable.com/webhelp/scr/2410.htm

设计这样的窗口很简单,窗口插入一个CheckedListBox控件,一个“确定”按钮,一个“取消”按钮。
窗口的AfterLoad事件代码设置为:

Dim lb As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox1")
lb
.ComboList = DataTables("订单").GetComboListString("产品")

“确定”按钮的代码设置为:

Dim s As String
Dim
 l As WinForm
.CheckedListBox = e.Form.Controls("CheckedListBox1")
For
 Each Index As Integer In l
.CheckedIndices
    If
 s > "" Then                  '如果S非空那么执行
        s = s & 
","
    
End If
    s = s & 
"'" & l
.Items(Index) & "'"        
Next
If
 s > "" Then
    Tables
("订单").Filter = "产品 In (" & s & ")"
End
 If
e
.Form.Close()

[此贴子已经被作者于2016/8/24 9:36:32编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/8/23 12:17:00 [只看该作者]

 意思是,如果之前s没有数据,就不加入逗号, 这样是为了合成的字符串最前面没有逗号。

 

 你也可以不判断,最后对 s.Trim(",") 也可以


 回到顶部
帅哥哟,离线,有人找我吗?
kolen
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:677 积分:6228 威望:0 精华:0 注册:2012/1/20 17:53:00
  发帖心情 Post By:2016/8/23 12:37:00 [只看该作者]

 循环第一次,S有没有数据,那么以下这个条件不成立,
If s > "" Then                 
        s = s & 
","
End If

所以执行s = s & "'" & l.Items(Index) & "'"  代码,假设值为a,b,c
执行完以上代码后,s = ,a,
(xun 
循环第二次: 条件成立了,
If s > "" Then                 
        s = s & 
","
End If

这时候s = ,a, ,
怎么就不对了,我的理解错在哪里了???


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/8/23 14:49:00 [只看该作者]

 最后得到 'a','b','c' 这样的数据。

 

 不然就得到了 ,'a','b','c'


 回到顶部
帅哥哟,离线,有人找我吗?
kolen
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:677 积分:6228 威望:0 精华:0 注册:2012/1/20 17:53:00
  发帖心情 Post By:2016/8/23 16:30:00 [只看该作者]

最后得到 'a','b','c' 这样的数据。

 

 不然就得到了 ,'a','b','c'

这个意思我明白了。


就是下面的代码 是专用代码吗? s > "" 能不能改成s <> "",只要不等于就行了?

If s > "" Then                 
        s = s & 
","
End If


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/8/23 17:24:00 [只看该作者]

 都可以,一样的意思

 回到顶部