求GridHitTes使用例子解决思路
求GridHitTes使用例子
如题求GridHitTes使用例子
------解决方案--------------------
------解决方案--------------------
函数通过"输出参数"将数据返回给调用他的过程,用变量的地址传送,VFP用@表示。
如题求GridHitTes使用例子
------解决方案--------------------
*
* Grid表格中移动鼠标获取指向单元格数据
*
PUBLIC oForm
oForm = NEWOBJECT("Form1")
oForm.Show
RETURN
DEFINE CLASS Form1 As Form
Height = 300
Width = 420
AutoCenter = .T.
Add Object Grid1 As Grid WITH AllowCellSelection=.F.
PROCEDURE Load
CREATE CURSOR TEMP (F1 C(10), F2 C(10), F3 I)
INSERT INTO TEMP VALUES ("ABC", "123456", 101)
INSERT INTO TEMP VALUES ("DEF", "654321", 202)
INSERT INTO TEMP VALUES ("GHI", "456123", 303)
INSERT INTO TEMP VALUES ("JKL", "789456", 404)
INSERT INTO TEMP VALUES ("NMO", "123789", 505)
GO TOP
ENDPROC
PROCEDURE _MouseMove
LPARAMETERS nButton, nShift, nXCoord, nYCoord
LOCAL nWhere, nRelRow, nRelCol
nWhere = 0
nRelRow = 0
nRelCol = 0
IF thisform.Grid1.GridHitTest(nXCoord, nYCoord, @nWhere, @nRelRow, @nRelCol)
IF nWhere == 3 && 单元格
thisform.Grid1.ActivateCell(nRelRow, nRelCol)
* 显示单元格数据
thisform.Caption = TRANSFORM(thisform.Grid1.Columns[nRelCol].Text1.Value)
ENDIF
ENDIF
ENDPROC
PROCEDURE Grid1.Init
this.setall("alignment", 2, "column")
this.HighlightBackColor = this.BackColor
this.HighlightForeColor = this.ForeColor
BINDEVENT(this, "MouseMove", thisform, "_MouseMove")
ENDPROC
ENDDEFINE
------解决方案--------------------
函数通过"输出参数"将数据返回给调用他的过程,用变量的地址传送,VFP用@表示。