Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共9 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:请教。。某列的值自动等于某列

1楼
卟离卟弃 发表于:2009/4/4 14:41:00
我想让第二列的值等于自动第一列(当第一列有内容时,第一列是表达式列)
第二列不是表达式列。
不怎么做?

请教下。
[此贴子已经被作者于2009-4-4 14:41:46编辑过]
2楼
cpayinyuan 发表于:2009/4/4 14:45:00
以下是引用卟离卟弃在2009-4-4 14:41:00的发言:
我想让第二列的值等于自动第一列(当第一列有内容时)
第二列不是表达式列。
不怎么做?

请教下。

在表的DatacolChanged 事件中编写:
 if e.Datacol.Name="第一列"
    if e.DataRow.isnull("第一列")=False
      e.DataRow("第二列")=e.DataRow("第一列")
   end if
end if

补充:要把代码中的"第一列"改为第一列的列名,把"第二列"改为第二列的列名.

[此贴子已经被作者于2009-4-4 14:48:51编辑过]
3楼
smileboy 发表于:2009/4/4 15:07:00
2楼代码缺少空值判断。
if e.Datacol.Name="第一列"
    if e.DataRow.isnull("第一列")=False then
      e.DataRow("第二列")=e.DataRow("第一列")
else
      e.DataRow("第二列")=nothing
   end if
end if
4楼
卟离卟弃 发表于:2009/4/4 15:27:00
第一列是表达式的时候,,不行。。。
5楼
cpayinyuan 发表于:2009/4/4 15:33:00
以下是引用卟离卟弃在2009-4-4 15:27:00的发言:
第一列是表达式的时候,,不行。。。

    当然不行,表达式列变化的时候,是不会触发DatacolChanged事件的.编写代码的时候,千万注意表达式列的问题,稍不小心,就会掉进表达式列的陷阱里.我还是觉得把列区分为表达式列不舒服,目前的表达式列这儿不能用那儿不能用有点别扭.
    我刚开始看的时候,好像没有看到说第一列是表达式列啊?
    难道是我眼花了!

[此贴子已经被作者于2009-4-4 15:35:10编辑过]
6楼
卟离卟弃 发表于:2009/4/4 15:35:00

有劳了,
是我后来加上去的,
谢谢

7楼
卟离卟弃 发表于:2009/4/4 15:40:00
软件中不是有 这么一列吗?[_Identify]
我想用这一列编个编码
因为这一列是永远不会重复的。。
比如说
第三列的内容=第一列+第二列+[_Identify]
这样形成一个唯一的编码///。。。
怎么做?
第一二三列都不是表达式列。。
[此贴子已经被作者于2009-4-4 15:41:44编辑过]
8楼
狐狸爸爸 发表于:2009/4/4 21:20:00
以下是引用smileboy在2009-4-4 15:07:00的发言:
2楼代码缺少空值判断。
if e.Datacol.Name="第一列"
    if e.DataRow.isnull("第一列")=False then
      e.DataRow("第二列")=e.DataRow("第一列")
else
      e.DataRow("第二列")=nothing
   end if
end if


应该这样:
if e.Datacol.Name="第一列"
     e.DataRow("第二列")=e.DataRow("第一列")
end if

9楼
狐狸爸爸 发表于:2009/4/4 21:22:00
以下是引用卟离卟弃在2009-4-4 15:40:00的发言:
软件中不是有 这么一列吗?[_Identify]
我想用这一列编个编码
因为这一列是永远不会重复的。。
比如说
第三列的内容=第一列+第二列+[_Identify]
这样形成一个唯一的编码///。。。
怎么做?
第一二三列都不是表达式列。。
[此贴子已经被作者于2009-4-4 15:41:44编辑过]

Select Case e.DataCol.Name
    Case "第一列","第二列"
       e.DataRow("第三列") = e.DataRow("第一列") & e.DataRow("第二列") & e.DataRow("_Identify")
End Select

共9 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.