以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]代码设置掩码的问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=63065)

--  作者:huangfanzi
--  发布时间:2015/1/13 12:03:00
--  [求助]代码设置掩码的问题
Tables("生产记录表").grid.Cols("单据号").EditMask="这里不会输入,请老师指导"

我希望掩码的内容是:ZJ01-2015-01-08-01,掩码中 “ZJ01”与“-”是固定字符,其他数字部分是人工输入的。
如果在列属于中设置,我的设置方法是"ZJ01-"0000"-"00"-"00"-"00
现在要根据不同的工序生成不同的掩码,请问代码如何写。

--  作者:有点甜
--  发布时间:2015/1/13 12:07:00
--  
 一列,只能生成一种掩码。
--  作者:huangfanzi
--  发布时间:2015/1/13 12:10:00
--  
我的代码想这样设计:

if 工序名=A,then
掩码A
else if 工序名=B then
掩码B
end if 

我这样的设计思路不行吗?

--  作者:huangfanzi
--  发布时间:2015/1/13 13:19:00
--  
解决了。代码如下,分享一下,见笑。

PrepareEdit 事件

\'设置掩码
If e.Col.Name="单据号" Then
    Select Case e.Table.Current("工序")
        Case "轧机1号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\Z\\J\\0\\10000-00-00-00"
        Case "清洗1号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\Q\\X\\0\\10000-00-00-00"
        Case "清洗2号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\Q\\X\\0\\20000-00-00-00"
        Case "连退1号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\L\\T\\0\\10000-00-00-00"
        Case "罩退1号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\Z\\T\\0\\10000-00-00-00"
        Case "真退1号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\K\\T\\0\\10000-00-00-00"
        Case "张矫1号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\L\\J\\0\\10000-00-00-00"
        Case "重卷1号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\C\\J\\0\\10000-00-00-00"
        Case "纵剪1号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\F\\Q\\0\\10000-00-00-00"
        Case "纵剪2号"
            Tables("生产记录表").grid.Cols("单据号").EditMask="\\F\\Q\\0\\20000-00-00-00"
        Case Else
            Tables("生产记录表").grid.Cols("单据号").EditMask="LLLL0000-00-00-00"
    End Select
End If