2011-04-22 94 views

回答

0

从内存中,如果数据源是表或游标我认为网格更改表中的当前行。所以只需访问表格。

但是我正在度假,在我的iPhone上,所以我要记忆。

1

您可以使用AfterRowColChange()事件来保留绑定到网格的最新“ControlSource”。然后,无论您希望如何获取该值并放到其他地方,请执行该源的EVALUATE()。为了看到这个示例,我创建了一个带有网格和标签的简单表单。网格列计数设置为-1,默认情况下,自动为用于显示的表格/光标中的所有列自动生成列。当我向上/向下滚动,在行和列之间左/右滚动时,我只是获取我所在列的控制源,然后将标签的标题设置为此类源的评估。 “TRANSFORM()”将值强制为字符串兼容,因此您不会在逻辑,日期,日期/时间,整型,数值等方面崩溃。尽管如此,您可能在“常规”类型字段中存在问题。

LPARAMETERS nColIndex 

lcSrc = This.Columns[nColIndex].ControlSource 
Thisform.label1.Caption = TRANSFORM(EVALUATE(lcSrc)) 

再次,只是保存,你可能想在网格中的“注释”属性存储为“最后一列拥有焦点” ...(多少像我一样从上面的lcSrc),然后将分配给无论我需要从我的任务到标签。这样一来,你就知道这是在它确实有焦点时的最新列...

This.Comment = This.Columns [nColIndex] .ControlSource

0

在一个网格,移动到行移动将指针记录到基础表的相应行。所以你只需要引用表中相应的项目。

ThisForm.Text1.Value = TheRelevantTable.TheRelevantField 

添马舰

0

试试这个为例,看看它的工作原理:

THISFORM.TEXT1.VALUE = THISFORM.GRID1.COLUMN1.TEXT1.VALUE