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


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

主题:[求助]窗口事件AfterLoad

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


加好友 发短信
等级:婴狐 帖子:77 积分:600 威望:0 精华:0 注册:2014/5/7 15:04:00
[求助]窗口事件AfterLoad  发帖心情 Post By:2014/8/19 8:19:00 [只看该作者]

我在窗口事件AfterLoad写了一下代码!重启项目后“增加”命令就完全没有了,只有增加行编辑时才有,我是想只要是本人都可以看到“增加”命令。

 

 

Dim fm  As WinForm.FileManager = e.Form.Controls("FileManager1")
Dim r As Row = Tables("档案管理表八所").Current
 fm.DeleteCommand.Visible = False
 fm.ClearCommand.Visible =  False
 fm.ManagerCommand.Visible = False
 fm.AddFolderCommand.Visible = False
If _UserName = r("归档人") Then
    fm.AddCommand.Visible = True
Else
    fm.AddCommand.Visible = False
End If


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/8/19 8:27:00 [只看该作者]

因为If _UserName = r("归档人") Then  不成立了

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/8/19 8:38:00 [只看该作者]

无需这么复杂,看看这里:
http://www.foxtable.com/help/topics/2638.htm
http://www.foxtable.com/help/topics/1446.htm


 将BeforeAddFile事件的代码设置为:
 
If _UserName = e.Datarow("归档人") Then
     e.Cancel = true
     Messagebox.show("不是你本人的记录,无权增加文件。")
end if
 
就OK了。

[此贴子已经被作者于2014-8-19 8:38:36编辑过]

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


加好友 发短信
等级:婴狐 帖子:77 积分:600 威望:0 精华:0 注册:2014/5/7 15:04:00
  发帖心情 Post By:2014/8/19 11:20:00 [只看该作者]

我去掉Then ,也一样的

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


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

理解不了你想说什么,你原本那个例子,这个窗口是模式窗口,所以每次都会重新打开一次窗口,所以代码就这样写

 

If _UserName = r("归档人") Then
    fm.AddCommand.Visible = True
Else
    fm.AddCommand.Visible = False
End If

 

如果你的窗口是其它形式的,你就应该去写表格的currentchanged事件

 

If e.Table.Current IsNot Nothing Then
    If Forms("窗口1").Opened Then
        Dim fl As WinForm.FileManager = Forms("窗口1").Controls("FileManager1")
        If _UserName = e.Table.Current("归档人") Then
            fl.AddCommand.Visible = True
        Else
            fl.AddCommand.Visible = False
        End If
    End If
End If


 回到顶部