【问题标题】:default background of grid cell网格单元格的默认背景
【发布时间】:2012-01-18 05:18:34
【问题描述】:

使用弹性网格

我想检查弹性网格单元格的默认颜色...

如果背景颜色是青色,那么下面的代码可以工作,如果背景颜色是白色,那么下面的代码就不能工作。

代码(方法1)

Private Sub flex1_LeaveCell()
    With flex1
        If .CellBackColor = vbCyan Then
            .TextMatrix(.row, 34) = Val(.TextMatrix(.row, .Col)) 
        ElseIf .CellBackColor = vbWhite Then
            .TextMatrix(.row, 33) = Val(.TextMatrix(.row, .Col)) 
        End If
    End With
End Sub

代码(方法二)

Private Sub flex1_LeaveCell()
    With flex1
        If .CellBackColor = vbCyan Then
            .TextMatrix(.row, 34) = Val(.TextMatrix(.row, .Col)) 
        Else
            .TextMatrix(.row, 33) = Val(.TextMatrix(.row, .Col)) 
        End If
    End With
End Sub

以上代码仅适用于青色,以上代码无法识别白色。

那么 flex grid 的默认免费单元格颜色是什么。

需要帮助

【问题讨论】:

  • 第二个子(方法2)根本不起作用,其中有语法错误。你的意思是写“Else”吗?
  • @Abbas,抱歉输入错误。现在我变了……
  • 代码非常简单,我看不出有什么问题。使用 MsgBox flex1.CellBackColor 打印颜色以确保确定。
  • @Abbas,我用msgbox试了一下,它显示为“0”,然后我用了.Cellbackcolor =“0”然后它也不起作用......
  • 如果 .Cellbackcolor = 0 那么 vbCyan 也不应该工作。请更新您问题中的代码,显示您是否添加了消息框并在 cmets 中添加了输出。我还建议您删除冗余代码(方法2)。

标签: vb6


【解决方案1】:

这对我来说很好。这不适合你?

Private Sub flex1_LeaveCell()
    With flex1
        If .CellBackColor = vbCyan Then
            MsgBox "cyan"
        ElseIf .CellBackColor = vbWhite Or .CellBackColor = 0 Then
            MsgBox "white"
        End If
    End With
End Sub

【讨论】:

    猜你喜欢
    • 2014-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多