以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  多文件管理怎么按用户限制  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=86079)

--  作者:kaituozhe
--  发布时间:2016/6/9 19:24:00
--  多文件管理怎么按用户限制
在某一列设置了多文件,使用ftp管理远程文件,怎么能够对文件管理器的按钮使用进行限制?
--  作者:kaituozhe
--  发布时间:2016/6/9 19:24:00
--  
比如有的用户不能使用增加、有的不能使用管理按钮等等,该怎么写代码?
--  作者:qwz405
--  发布时间:2016/6/9 20:39:00
--  
 Dim f1 As WinForm.FileManager = e.Form.Controls("file1")    \'控制文件管理器各按键是否可见
    f1.AddCommand.Visible = True          \'增加
    f1.AddFolderCommand.Visible = True    \'目录
    f1.DeleteCommand.Visible = True       \'删除
    f1.ClearCommand.Visible = True        \'清除
    f1.OpenCommand.Visible = True         \'打开
    f1.ManagerCommand.Visible = False     \'管理
    f1.SaveAsCommand.Visible = True       \'另存
    f1.ConnectCommand.Visible = True      \'重连

--  作者:qwz405
--  发布时间:2016/6/9 20:39:00
--  
Dim p1 As WinForm.PictureViewer = e.Form.Controls("picture1")   \'控制图片浏览器各按键是否可见
    p1.AddCommand.Visible = True         \'增加
    p1.DeleteCommand.Visible = True      \'删除
    p1.ClearCommand.Visible = True       \'清除
    p1.OpenCommand.Visible = False       \'打开
    p1.FullViewCommand.Visible = True    \'全屏
    p1.ManagerCommand.Visible = False    \'管理
    p1.SaveAsCommand.Visible = True      \'另存
    p1.StretchCommand.Visible = True     \'缩放
    p1.UpdateCommand.Visible = True      \'更新
    p1.ConnectCommand.Visible = True     \'重连


--  作者:kaituozhe
--  发布时间:2016/6/10 7:12:00
--  

3、4楼代码设置那个事件中?怎么与具体的用户关联起来?


--  作者:kaituozhe
--  发布时间:2016/6/10 7:13:00
--  

设置内置的文件管理器

帮助中的代码设置在那个事件中呢?
--  作者:kaituozhe
--  发布时间:2016/6/10 8:10:00
--  

  以下代码应该放在那个事件中?

Tables("员工").Cols("附件").OpenWindow()
Dim
fl As WinForm.FileManager = Tables("员工").Cols("附件").FileManager
fl.DeleteCommand.Enabled =
False
fl.ClearCommand.Enabled =
False


--  作者:kaituozhe
--  发布时间:2016/6/10 8:11:00
--  
设置内置文件管理器可否使用3、4楼的代码?
--  作者:大红袍
--  发布时间:2016/6/10 10:38:00
--  
以下是引用kaituozhe在2016/6/10 8:11:00的发言:
设置内置文件管理器可否使用3、4楼的代码?

 

写到afterOpenProject事件。或者看看这个例子

 

下载信息  [文件大小:312.0 KB  下载次数:7]
图片点击可在新窗口打开查看点击浏览该文件:动态修改foxtable窗口_例子.table


--  作者:zcgmxf
--  发布时间:2016/6/10 11:05:00
--  
 以下代码应该放在那个事件中?

Tables("员工").Cols("附件").OpenWindow()
Dim
fl As WinForm.FileManager = Tables("员工").Cols("附件").FileManager
fl.DeleteCommand.Enabled =
False
fl.ClearCommand.Enabled =
False

 

上面的代码只对列窗口有效。不如做一个窗口,插入相关控件,在窗口的 afterload 加入代码控制。在表的CellButtonClick 事件调用。使用和内置的一样,感觉没什么差别。

 

 

如:

Dim fm As WinForm.FileManager = e.Form.Controls("FileManager1")
Dim r As Row = Tables("个人信息表").current
If r IsNot Nothing Then
    If User.IsRole("人事管理") Then
        fm.DeleteCommand.Visible = True
        fm.ClearCommand.Visible = True
        fm.ManagerCommand.Visible = True
        fm.AddFolderCommand.Visible = True
        fm.AddCommand.Visible = True
    Else
        fm.DeleteCommand.Visible = False
        fm.ClearCommand.Visible = False
        fm.ManagerCommand.Visible = False
        fm.AddFolderCommand.Visible = False
        fm.AddCommand.Visible = False
    End If
End If