Foxtable(狐表)用户栏目专家坐堂 → 单元格底色


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

主题:单元格底色

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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
单元格底色  发帖心情 Post By:2022/9/15 15:07:00 [显示全部帖子]

菜单栏有的颜色调色板,我想在主窗口的表选中单元格后在调色板选择颜色后单元格的底色变色怎么写代码

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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
颜色选择  发帖心情 Post By:2022/9/15 16:35:00 [显示全部帖子]

现在这样只能是一个颜色红底白字,我想在调色板选什么颜色单元格就是什么颜色


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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
菜单按钮  发帖心情 Post By:2022/9/15 16:38:00 [显示全部帖子]

我的菜单按钮是颜色选取按钮

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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
单元格变色问题  发帖心情 Post By:2022/9/15 20:05:00 [显示全部帖子]

老大现在代码这样我在颜色选取按钮的click和selectedcolorchanged里都写了
Dim t As Table = Tables("合同主表")
Dim cr1 As C1.Win.C1FlexGrid.CellStyle = t.Grid.Styles.Add("a") ' 创建一个新的自定义样式
cr1.BackColor = e.ColorPicker.Color
Dim rg As C1.Win.C1FlexGrid.CellRange = t.Grid.GetCellRange(t.RowSel + 1, t.ColSel + 1, t.RowSel + 1, t.ColSel + 1)
rg.Style = cr1
现在的问题是我选一个单元格变色,第二个选择变色,第三个我换一个颜色原来的就全变心选的颜色了


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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
不行,还是全部变色  发帖心情 Post By:2022/9/15 20:22:00 [显示全部帖子]

还是不行另选颜色后,前面变色的单元格也一起变了

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


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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
查了帖子  发帖心情 Post By:2022/9/15 20:29:00 [显示全部帖子]

Dim r As Integer = CurrentTable.RowSel+1
Dim c As Integer = CurrentTable.ColSel+1

Dim s As C1.Win.C1FlexGrid.CellStyle = CurrentTable.grid.Styles.Add(r & "-" & c)
s.ForeColor = e.ColorPicker.Color
CurrentTable.Grid.SetCellStyle(CurrentTable.RowSel+1, CurrentTable.ColSel+1, s)


这个改成back就好了,但是颜色怎么保存?


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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
参照帖子  发帖心情 Post By:2022/9/15 20:50:00 [显示全部帖子]

单元格颜色变色后不能保存
[此贴子已经被作者于2022/9/15 21:00:43编辑过]

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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
颜色备注  发帖心情 Post By:2022/9/15 21:59:00 [显示全部帖子]

我现在查了帖子新建了一个表背景批注存放表名行号和背景
菜单的帖子颜色选取按钮我参照的代码
Dim tname As String = CurrentTable.Name
Dim hk As Integer = CurrentTable.Current("_Identify")
Dim cname As String = CurrentTable.Cols(CurrentTable.ColSel).Name
Dim dr As DataRow = DataTables("背景批注").Find("表名 = '" & tname  & "' and 行号 = " & hk )
If dr Is Nothing Then
    dr = DataTables("背景批注").AddNew
    dr("表名") = tname
    dr("行号") = hk
End If
Dim sColor As String = dr("背景")
Dim Values() As String = sColor.Split("|")
For Index As Integer = 0 To Values.Length - 1
    If cname = Values(Index).Split(",")(0) Then
        sColor = sColor.replace(Values(Index),"")
        Exit For
    End If
Next
sColor = sColor.Trim("|") & "|" & cName & "," & e.ColorPicker.Color.Toargb
e.ColorPicker.Color=Color.white
dr("背景") = sColor.Trim("|")
DataTables("背景批注").save

背景批注表里有新增的记录,但是当前表的单元格还是不变色。我下载的例子是可以变的真奇怪了,我看例子的库有内部函数我也照抄了

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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
实例  发帖心情 Post By:2022/9/15 22:39:00 [显示全部帖子]

这个实例里afteropenproject只是设定了maintable也没有遍历,全局表事件里drawcell写了
'背景色和批注
Dim dr As DataRow = DataTables("背景批注").Find("表名 = '" & e.Table.Name  & "' and 行号 = '" & e.Row("_Identify") & "'")
If dr IsNot Nothing Then
    '背景色
    Dim Yanse As String = dr("背景")
    Dim YSs() As String = Yanse.split("|")
    For Index As Integer = 0 To YSs.Length - 1
        Dim YSInfo() As String =  YSs(Index).split(",")
        If e.Col.Name = YSInfo(0) Then
            Dim br2 As Brush = New SolidBrush(Color.FromARGB(YSInfo(1)))
            Functions.Execute("ToYanse",e,br2)
        End If
    Next
    '批注
    Dim Pizhu As String = dr("批注")
    Dim PZs() As String = Pizhu.split("|")
    For Index As Integer = 0 To PZs.Length - 1
        Dim PZInfo() As String =  PZs(Index).split(",")
        If e.Col.Name = PZInfo(0) Then
            Functions.Execute("ToPiZhu",e)
        End If
    Next
End If
我也照做了还是不行
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:g.foxdb


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


加好友 发短信
等级:幼狐 帖子:147 积分:1343 威望:0 精华:0 注册:2016/4/6 14:05:00
应该是项目打开时的默认主表的关系  发帖心情 Post By:2022/9/16 8:35:00 [显示全部帖子]

我的项目就是现在这样我项目打开
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:g.foxdb

默认是main表,菜单上窗口2打开加载的是合同表这时我点添加背景就不能变色了

 回到顶部
总数 17 1 2 下一页