Foxtable(狐表)用户栏目专家坐堂 → [求助]动态窗口控件


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

主题:[求助]动态窗口控件

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
[求助]动态窗口控件  发帖心情 Post By:2018/7/5 16:26:00 [只看该作者]

动态窗口控件的动态列表项目设置,以下代码没起作用

 

Dim lbl As WinForm.CheckedComboBox 
 lbl = e.Form.CreateControl("DL", ControlTypeEnum.CheckedComboBox) 
 lbl.Left = 100
 lbl.Top = 70
 lbl.Width = 100
 lbl.Height = 20
 e.Form.AddControl(lbl)

 

Dim lbl1 As WinForm.CheckedComboBox 
 lbl1 = e.Form.CreateControl("MX", ControlTypeEnum.CheckedComboBox) 
 lbl1.Left = 210
 lbl1.Top = 70
 lbl1.Width = 100
 lbl1.Height = 20
 e.Form.AddControl(lbl1)


Dim DL As String
If e.Form.ExistControl("DL") = True 
    Dim cmb As WinForm.CheckedComboBox = e.form.Controls("DL") 
    cmb.ComboList = DataTables("科目档案").GetComboListString("成本大类")
    Dim cmb1 As WinForm.CheckedComboBox = e.form.Controls("MX")
    Dim str1 As String = e.Form.Controls("DL").value 
    If str1 Is Nothing
        cmb1.ComboList = DataTables("科目档案").GetComboListString("科目名称","科目性质='损益'")
        Else
        cmb1.ComboList = DataTables("科目档案").GetComboListString("科目名称","成本大类 in ( '" & str1.replace(",","','") & "')") 
    End If
End If

 

上面标颜色的这句代码没起作用,如果直接放在控件的enter事件里是没有问题的


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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/5 17:01:00 [只看该作者]

这个返回什么数据:

msgbox(DataTables("科目档案").GetComboListString("科目名称","成本大类 in ( '" & str1.replace(",","','") & "')") )

msgbox("成本大类 in ( '" & str1.replace(",","','") & "')")

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2018/7/5 18:02:00 [只看该作者]

试了,放在控件的enter事件里显示正常

我上面的代码是写在单选按钮的click事件里的,msgbox没显示任何东西

如何将控件的enter事件在click事件里体现呢

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/5 22:12:00 [只看该作者]

我这样测试,正常,请做个例子发上来测试。

 

Dim lbl As WinForm.CheckedComboBox
lbl = e.Form.CreateControl("DL", ControlTypeEnum.CheckedComboBox)
lbl.Left = 100
lbl.Top = 70
lbl.Width = 100
lbl.Height = 20
e.Form.AddControl(lbl)

Dim lbl1 As WinForm.CheckedComboBox
lbl1 = e.Form.CreateControl("MX", ControlTypeEnum.CheckedComboBox)
lbl1.Left = 210
lbl1.Top = 70
lbl1.Width = 100
lbl1.Height = 20
e.Form.AddControl(lbl1)


Dim DL As String
If e.Form.ExistControl("DL") = True
    Dim cmb As WinForm.CheckedComboBox = e.form.Controls("DL")
    cmb.ComboList = "1|2|3|4"
    Dim cmb1 As WinForm.CheckedComboBox = e.form.Controls("MX")   
    cmb1.ComboList = "A|B"
End If


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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2018/7/6 9:02:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目5.foxdb


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/6 9:38:00 [只看该作者]

如果你要做联动,必须在控件CheckedComboBox的enter、textchanged、或者click事件写代码才行的。

 

 


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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2018/7/7 17:17:00 [只看该作者]

 哦,那我只有固定控件,用Visible属性控制了


 回到顶部