
如上图所示,想点击不同行,获取第二列编号(bh)的不同值,在grid的afterrowcolchange事件中应该如何实现?谢谢

关注引自免费微信小程序:皆我百晓生
在Visual FoxPro (VFP) 中,要实现这个功能,你需要在AfterRowColChange事件中编写代码来获取当前选中的行的第二列(bh)的值。下面是一个详细的步骤和示例代码。
首先,确保你已经在表单上添加了一个名为GridControlName的Grid控件,并且已经连接到包含数据的表。
GridControlName控件。AfterRowColChange事件。接下来,为AfterRowColChange事件编写代码:
PROCEDURE AfterRowColChange
LOCAL lo_grid AS GridControlName // 假设你的Grid控件名称是GridControlName
LOCAL ln_row AS INTEGER, lv_bh AS CHAR(10)
ln_row = lo_grid.Row // 获取当前行号
lv_bh = lo_grid.DataField("bh")[ln_row] // 获取当前行bh列的值
// 在这里可以对lv_bh进行处理,例如显示在消息框或文本框中
MESSAGEBOX("当前行的bh编号: " + lv_bh)
ENDPROC
这段代码首先定义了局部变量lo_grid来引用Grid控件,然后通过lo_grid.Row获取当前选中的行号。接着,使用lo_grid.DataField("bh")[ln_row]来获取指定行号对应的bh列的值。将获取到的bh值存储在lv_bh变量中,然后在消息框中显示出来。
如果你想要将这些值保存到数组或其他地方,只需要将获取的lv_bh值添加到相应的数据结构中即可。
注意:在实际应用中,你需要将GridControlName替换为你的Grid控件的实际名称。同时,确保你的数据表中bh字段的数据类型与lv_bh的定义相匹配。在这个例子中,我们假设bh是字符型,长度为10,你可以根据实际情况调整。