找回密码
 立即注册

QQ登录

只需一步,快速开始

zheng_hq

银牌会员

151

主题

391

帖子

2227

积分

银牌会员

积分
2227

活字格认证

zheng_hq
银牌会员   /  发表于:2011-10-27 13:47  /   查看:5935  /  回复:3
从c1flexgrid2里面 读取到 c1flexgrid1里面的数据的格式是什么呢

C1FlexGrid1.SetData(1, 2, C1FlexGrid2.GetData(1, 2))

这时c1flexgrid1(1,2)显示是3

Dim list_odd As New ArrayList()
        list_odd.Add(1)
        list_odd.Add(3)
        list_odd.Add(5)
        list_odd.Add(7)
        list_odd.Add(9)

        If list_odd.Contains(C1FlexGrid1.GetData(1, 2)) Then
            C1FlexGrid1.SetData(1, 5, "●")
        Else
            C1FlexGrid1.SetData(1, 5, 1)
        End If
————————————————————————————————————
根据if语句,这时c1flexgrid1(1,5)应该显示"●",但实际显示“1”,
至少说明c1flexgrid(1,2)单元格里面的3的格式不对,
条件运算无法识别

是不是要对c1flexgrid.cols(2) c1flexgrid.cols(3) c1flexgrid.cols(4) 元格转换格式呢?
怎么转呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

3 个回复

正序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-10-27 17:45:00
地板
从调试结果来看,程序并没有运行到2楼中红色标注的那行代码
原因是C1FlexGrid1.GetData(1, 2)取出来的数据是Double类型,而list_odd中的数据是Int32类型,调用list_odd.Contains返回值是False,所以你需要将两边数据的数据类型设置为相同的类型,比如都是Int32或者String。
以String为例你需要修改以下设置和代码:
  1.         Dim list_odd As New ArrayList()
  2.         list_odd.Add("1")
  3.         list_odd.Add("3")
  4.         list_odd.Add("5")
  5.         list_odd.Add("7")
  6.         list_odd.Add("9")
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
zheng_hq
银牌会员   /  发表于:2011-10-27 16:50:00
板凳

我实在不知道怎么回事



if语句正常

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-10-27 16:36:00
沙发
你可以调试一下看是否执行了红色行的代码:
        If list_odd.Contains(C1FlexGrid1.GetData(1, 2)) Then
            C1FlexGrid1.SetData(1, 5, "●")
        Else
            C1FlexGrid1.SetData(1, 5, 1)
        End If
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部