Foxtable(狐表)用户栏目专家坐堂 → 当某个表加载后,这个表的主窗口种没有窗口表控件,那么某个控件就不可用,这个代码怎么写


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

主题:当某个表加载后,这个表的主窗口种没有窗口表控件,那么某个控件就不可用,这个代码怎么写

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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
当某个表加载后,这个表的主窗口种没有窗口表控件,那么某个控件就不可用,这个代码怎么写  发帖心情 Post By:2016/8/15 17:55:00 [只看该作者]

当某个表加载后,这个表的主窗口种没有窗口表控件,那么某个控件就不可用,这个代码怎么写

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


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

 判断窗口是否有窗口表?

 

Dim frm As WinForm.Form = Forms("窗口1")
Dim flag As Boolean = True
For Each c As object In frm.Controls
    If typeof c Is winform.Table Then
        flag = False
        Exit For
    End If
Next

某控件.Enabled = flag


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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
改个简单的,这个代码怎么改  发帖心情 Post By:2016/8/15 19:19:00 [只看该作者]

改个简单的,这个代码怎么改
图片点击可在新窗口打开查看此主题相关图片如下:74.png
图片点击可在新窗口打开查看

在主表切换事件中,当主表切换成主界面的时候   a  是否编辑

 

 

暂时知道了用.name属性,

[此贴子已经被作者于2016/8/15 20:05:59编辑过]

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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
下面这句代码在主表切换后事件中的全部代码,打开项目的时候出错  发帖心情 Post By:2016/8/15 20:29:00 [只看该作者]

Dim a As winform.button = Forms("顶部共有窗口").controls("锁定解锁表")

 If MainTable.name = "主界面" Then
   a.enabled = False
 Else
   a.enabled = True
 End If

 

 

这是全部这个事件的代码了,在打开项目的时候出错,问题会出在哪里呢


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


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

 这样也可以。

 

If MainTable.Equals(Tables("表A")) then
    msgbox("123")
End If


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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
打开项目的时候出错  发帖心情 Post By:2016/8/15 21:11:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:99.png
图片点击可在新窗口打开查看

 

 

 

 

Dim a As winform.button = Forms("顶部共有窗口").controls("锁定解锁表")
If MainTable.Equals(Tables("主界面")) Then
   a.enabled = False
 Else
   a.enabled = True
End If

[此贴子已经被作者于2016/8/15 21:13:30编辑过]

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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
好像是初始加载表的问题?  发帖心情 Post By:2016/8/15 21:14:00 [只看该作者]

但是我的项目初始必须最少加载这个主界面表,怎么办

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


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

 方法一

 

Dim a As winform.button = Forms("顶部共有窗口").controls("锁定解锁表")
If MainTable.Name = "主界面"  Then
   a.enabled = False
 Else
   a.enabled = True
End If

 

 方法二

 

Dim a As winform.button = Forms("顶部共有窗口").controls("锁定解锁表")
If Tables.Contains("主界面") AndAlso MainTable.Equals(Tables("主界面")) Then
   a.enabled = False
 Else
   a.enabled = True
End If


 回到顶部