Foxtable(狐表)用户栏目专家坐堂 → 如何能知道窗口中双击控件的所属TabControl的名称


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

主题:如何能知道窗口中双击控件的所属TabControl的名称

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


加好友 发短信
等级:六尾狐 帖子:1472 积分:11478 威望:0 精华:0 注册:2013/11/24 22:10:00
如何能知道窗口中双击控件的所属TabControl的名称  发帖心情 Post By:2018/3/29 15:39:00 [显示全部帖子]

如题

老师,我现在在做一个项目,主要是以TabControl来显示,全部控件动态加载,控件的事件全部写在窗口的双击事件.

如何实际双击该控件,就能知道该控件所所的TabControl?

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


加好友 发短信
等级:六尾狐 帖子:1472 积分:11478 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2018/4/29 21:25:00 [显示全部帖子]

有点甜老师

我现在在做的项目都是动态增加TabControl,然后再在该TabControl上增加控件,我用你给我的代码,可以直接找到该控件所属的TabControl,我现在定义所有 标题名为:关闭窗口的 bottom,
除了窗口自带一个TabControl,名称为导航窗口,其它的都是用代码动态增加的。
在该窗口的 click 事件写以下代码:
If Typeof e.Sender Is WinForm.Button Then
    Dim gb As WinForm.Button = e.Form.Controls(e.Sender.name)
    Dim o = e.sender.parent
    Dim qd As Boolean = False
    If gb.Text = "关闭窗口" Then
        qd = True
    End If
    Dim name As String
    Do While o IsNot Nothing
        If o.Gettype.name = "Tabpage" Then          
            If o.name <> "导航窗口" Then
               name = o.name 
            End If
            Exit Do
        End If
        o = o.parent
    Loop
    If name > "" Then
        If qd = True Then
            If e.Form.Controls("DH").TabPages.Contains(name) = True Then
                e.Form.Controls("DH").TabPages.Delete(name)
                Return
            End If
        End If
    End If
End If

用这个代码,可以关闭当前的TabControl,但是一关闭完全成就会出错。如下图

图片点击可在新窗口打开查看此主题相关图片如下:5w15kq94yfjip2h6%@u0fz4.png
图片点击可在新窗口打开查看

这个窗口一直在闪,只有用任务管理器关闭。我有菜单systemidle 中没有代码。老师能帮我看看是什么原因吗?



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


加好友 发短信
等级:六尾狐 帖子:1472 积分:11478 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2018/4/30 20:59:00 [显示全部帖子]

老师,

项目因为连着公司的服务器,不方便发上来。刚才又测试了一下,发现真的很奇怪。发布后的程序是没有问题的,但是开发版的就会出错。这种情况一般是什么问题?

 回到顶部