Foxtable(狐表)用户栏目专家坐堂 → 表焦点的问题


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

主题:表焦点的问题

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


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
表焦点的问题  发帖心情 Post By:2014/7/9 21:20:00 [只看该作者]

主窗口为Main,在其下设计了多个sql查询的并列窗口,窗口afterload中的代码:

Dim dr As DataRow
dr = DataTables("QtbSet").Find("WinN = '" & e.Form.name & "'")
If dr IsNot Nothing Then
    If dr("ldTreeDef") > "" Then
        QueryTrcol = dr("ldTreeDef") '将默认查询目录树列赋予全局变量
        Functions.Execute("QueryTree",dr("ldTreeDef")) '传递默认加载列生成目录树
    End If
End If
Tables(e.Form.Name & "_Table1").Focus  '将焦点移动到表上

 

最后一句就是想窗口打开后把焦点定位在第一个表上,但是却没有效果,用msgbox(Currenttable.Name)

为什么还是显示的Main,而不是打开窗口的那个表?

 

谢谢!


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


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

试试改成这样

 

e.Form.Controls("Table1").Select

e.Form.Controls("Table1").Table.Focus

e.Form.Controls("Table1").Table.Select(-1,0)

 


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


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/7/9 22:11:00 [只看该作者]

谢谢有点甜老师,只有

e.Form.Controls("Table1").Select  这种方式可以,

其他两种和我自己用的那种都不可以,可以解释一下为什么吗?有时感觉很难理解。


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


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

必须模拟控件获取到焦点,因为每个table都是可以Focus的,触发不了currentTable的变化。

 回到顶部