以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  表中显示 ****号的单元格,在窗口中如何继承?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=14050)

--  作者:yacity
--  发布时间:2011/11/6 16:09:00
--  表中显示 ****号的单元格,在窗口中如何继承?

如图 用 冼开京 用户登录

 

表中第二行 成本单价 显示 ****** (该用户为业务员,如果是业务员就显示*****)

但是 点击第二行 的产品名称 弹出窗口,却不显示星号,而是显示了真实成本,如何解决?

 

 


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

 


 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:复件 儋州琼富塑料管理系统1.0.table


--  作者:布莱克朱
--  发布时间:2011/11/6 18:15:00
--  

DrawCell事件不仅用于标记数据,还可以用他“篡改”数据。
假定有一名为“密码”的列,要求只有经理级别的用户才能查看该列的数据,其他人查看的时候,看到的只是"****"。
实现的代码也非常简单,在该表的DrawCell事件中输入:

If User.Group = "经理" Then \'如果是经理
Return \'那么返回,正常显示数据
End
If
If
e.Col.Name = "密码" Then \'如果正在绘制的是密码列
e.Text =
"****" \'那么用*代替原来的内容
End
IF


--  作者:布莱克朱
--  发布时间:2011/11/6 18:19:00
--  
所有在表打开窗口的必须锁定表,表有单击和双击事件.

你可以试试在这个PrepareEdit表事件里面设置如下代码:

e.Cancel = True  \'取消所有列的编辑
If e.Col.name= "列名" Then   如果要编辑这个列
   e.Cancel = False   \'打开编辑
End
If

--  作者:狐狸爸爸
--  发布时间:2011/11/6 20:27:00
--  

在窗口中将此控件的.Visible属性设置为False,或者用另一个只有**的控件遮住这个文本框,方法很多。

还可以看看:

http://www.foxtable.com/help/topics/0737.htm

 

 

[此贴子已经被作者于2011-11-6 20:28:24编辑过]

--  作者:yacity
--  发布时间:2011/11/7 9:57:00
--  

 


谢谢 各位的帮忙,不知道是我没有表达清楚 还是你们说的我看不明白?

再重复说明一下:

如 一楼的图片 成本单价,在窗口中 如果是 财务部 的用户就显示 单价,如果不是财务部的就显示****

在表中好弄:

 

表的 drawcell 时间设置如下

Select Case  e.Col.Name
Case "danjia","zonger"
    If User.Group <> "财务部" Then

        e.Text = "****" \'则修改显示内容
    End If
End Select

 

可是在窗口中呢?

[此贴子已经被作者于2011-11-7 11:17:16编辑过]

--  作者:yangming
--  发布时间:2011/11/7 13:35:00
--  

1. 增加一个文本框TextBox5,其初始值为:"*****"

2.在窗口的AfterLoad事件中加以下代码就可以解决

 

If User.Group <> "财务部" Then

    e.Form.Controls("TextBox9").Visible = False
    e.Form.Controls("TextBox5").Visible = True
   
Else
    e.Form.Controls("TextBox9").Visible =True
    e.Form.Controls("TextBox5").Visible = True
   
End If

[此贴子已经被作者于2011-11-7 13:39:48编辑过]