Foxtable(狐表)用户栏目专家坐堂 → [求助]如何动态判断增加控件


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

主题:[求助]如何动态判断增加控件

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


加好友 发短信
等级:小狐 帖子:352 积分:3192 威望:0 精华:0 注册:2008/9/1 9:38:00
[求助]如何动态判断增加控件  发帖心情 Post By:2012/6/21 15:10:00 [只看该作者]

求助,如何在窗口控件panel动态判定是否存在多个chart,然后删除,重新动态创建新chart

 

以下代码执行总报错

    Dim pn As WinForm.Panel
    Dim chrt As WinForm.Chart
    For Each ctl As winform.control In e.form.controls("pn1").Children
        If e.form.controls("pn1").ExistControl(ctl.name) Then
           e.form.controls("pn1").RemoveControl(ctl.name)
        End If
    Next

[此贴子已经被作者于2012-6-21 15:13:52编辑过]

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


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/6/21 15:15:00 [只看该作者]

很简单那,你创建的图表控件全部用char开头, 这样就可以遍历控件,凡是名称chart开头的,都是图表控件


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


加好友 发短信
等级:小狐 帖子:352 积分:3192 威望:0 精华:0 注册:2008/9/1 9:38:00
  发帖心情 Post By:2012/6/21 15:20:00 [只看该作者]

代码写了很多测试都报错,具体如何写循环判定删除

 


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


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/6/21 15:25:00 [只看该作者]

Dim cnt as integer
For Each c As Winform.Control In e.Form.Controls
     if c.Name.Startswith("Chart") then
           cnt = cnt + 1
     end if
Next
if cnt > 0 then
     MessageBox.show(cnt & "个图表")
end if

注意名何区分大小写,chart不等于Chart


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


加好友 发短信
等级:小狐 帖子:352 积分:3192 威望:0 精华:0 注册:2008/9/1 9:38:00
  发帖心情 Post By:2012/6/21 15:26:00 [只看该作者]

解决了

    For Each c As Winform.Control In e.Form.Controls
        If c.name.contains("chart") Then
            e.Form.RemoveControl(c.name)
        End If
    Next


 回到顶部