Foxtable(狐表)用户栏目专家坐堂 → 动态增加记录窗口


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

主题:动态增加记录窗口

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


加好友 发短信
等级:三尾狐 帖子:658 积分:7902 威望:0 精华:0 注册:2013/12/11 17:49:00
动态增加记录窗口  发帖心情 Post By:2019/6/1 14:59:00 [只看该作者]

请问一下动态增加的记录窗口怎么设置背景颜色?  

 

以下这段代码  对存在的记录窗口是可以的   通过代码新增的 就报错了

 

        ''''''''锁定列  必填列涂色
        'Dim g = Forms(e.Form.Name).Controls(jls).basecontrol
        'g.Styles.normal.Border.Style = 3
        'g.styles.Normal.Border.Color = Color.Black
        'g.styles.Normal.Border.width = 3
        'Dim Multi As String =dr("锁定列")
        'If Multi> "" Then
            'Dim Values() As String
            'Values = Multi.split("|")
            'For idx As Integer = 0 To Values.Length - 1
                'Tables("合同").Cols( Values(idx) ).AllowEdit =False
                'g.GetCellStyle(   Tables("合同").Cols( Values(idx) ).Index  ,1).BackColor = Color.Gainsboro
            'Next
        'End If
        'Dim btl As String =dr("必填字段")
        'If btl> "" Then
            'Dim jcbts() As String = btl.split("|")
            'For Index As Integer = 0 To jcbts.Length - 1
                'g.GetCellStyle(   Tables(e.Form.Name).Cols( jcbts(Index) ).Index    ,1).BackColor = Color.pink
            'Next
        'End If
        ''''''''锁定列  必填列涂色

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:动态增加控件.foxdb

[此贴子已经被作者于2019/6/1 15:03:59编辑过]

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


加好友 发短信
等级:超级版主 帖子:110784 积分:563852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/6/1 15:42:00 [只看该作者]

For Each jls As String In yms
    If jls<>"基本资料" Then
        yq.TabPages.Add(jls,jls)
        i =i+1
        Dim kj As WinForm.RecordGrid
        kj =e.Form.CreateControl("页签", ControlTypeEnum.RecordGrid)
        kj.Left =5
        kj.Top =5
        kj.Width =495
        kj.Height =485
        Dim ym As WinForm.TabPage =e.Form.Controls("页签").TabPages(i)
        ym.AddControl(kj)
        kj.Table = Tables(e.Form.Name) '指定绑定表
        kj.Columns = DataTables("页面显示").GetComboListString("显示列","页签='" & jls & "'","排序")
        kj.Build
        '''''''锁定列  必填列涂色
        Dim g = kj.basecontrol
        g.Styles.normal.Border.Style = 3
        g.styles.Normal.Border.Color = Color.Black
        g.styles.Normal.Border.width = 3
        Dim Multi As String =dr("锁定列")
        If Multi> "" Then
            Dim Values() As String
            Values = Multi.split("|")
            For idx As Integer = 0 To Values.Length - 1
                Tables(e.Form.Name).Cols( Values(idx) ).AllowEdit =False
                g.GetCellStyle(   Tables(e.Form.Name).Cols( Values(idx) ).Index  ,1).BackColor = Color.Gainsboro
            Next
        End If
        Dim btl As String =dr("必填字段")
        If btl> "" Then
            Dim jcbts() As String = btl.split("|")
            For Index As Integer = 0 To jcbts.Length - 1
                g.GetCellStyle(   Tables(e.Form.Name).Cols( jcbts(Index) ).Index    ,1).BackColor = Color.pink
            Next
        End If
        '''''''锁定列  必填列涂色
        
    Else
        jljbxx.Table = Tables(e.Form.Name) '指定绑定表
        jljbxx.Columns = DataTables("页面显示").GetComboListString("显示列","页签='基本资料'","排序")
        jljbxx.Build
    End If
    
Next

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


加好友 发短信
等级:三尾狐 帖子:658 积分:7902 威望:0 精华:0 注册:2013/12/11 17:49:00
  发帖心情 Post By:2019/6/1 16:07:00 [只看该作者]

谢谢老师   但是还是报错

我知道错在哪了  是因为记录窗口 找不到那列导致的

 请问怎么获取记录窗口列名?

[此贴子已经被作者于2019/6/1 16:41:17编辑过]

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


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

以下是引用lshshlxsh在2019/6/1 16:07:00的发言:

谢谢老师   但是还是报错

我知道错在哪了  是因为记录窗口 找不到那列导致的

 请问怎么获取记录窗口列名?

[此贴子已经被作者于2019/6/1 16:41:17编辑过]

 

上传具体实例,说明测试步骤,说明需要达到的效果。

 


 回到顶部