我尝试从另一个表单上的网格中打开表单。我将我的代码放在我的网格的相应列中的Text控件的DblClick事件中,但没有任何反应。这适用于另一个应用程序,我看不出我的两个表单之间的任何差异。我在俯瞰什么?谢谢。 /伯纳德
答案 0 :(得分:0)
由于我没有看到MouseDown,MouseUp或Click,我不得不假设你实际上没有点击文本框,或者你没有跟踪列表中的那些方法。这是我在网格单元格中双击时看到的内容:
59739.682, form1.grid1.MouseDown(1, 0, 153, 81)
59739.687, form1.grid1.column2.text1.When()
59739.692, form1.grid1.column2.text1.GotFocus()
59739.692, form1.grid1.column2.text1.Message()
59739.705, form1.grid1.AfterRowColChange(2)
59739.713, form1.grid1.column2.text1.MouseDown(1, 0, 153, 81)
59739.744, form1.grid1.MouseUp(1, 0, 153, 81)
59739.746, form1.grid1.column2.text1.MouseUp(1, 0, 153, 81)
59739.748, form1.grid1.column2.text1.Click()
59739.772, form1.grid1.MouseDown(1, 0, 153, 81)
59739.773, form1.grid1.column2.text1.MouseDown(1, 0, 153, 81)
59739.878, form1.grid1.MouseUp(1, 0, 153, 81)
59739.880, form1.grid1.column2.text1.MouseUp(1, 0, 153, 81)
59739.882, form1.grid1.column2.text1.DblClick()
答案 1 :(得分:0)
我的代码被忽略的原因是因为它不在那里。由于我使用来自表单另一部分的数据填充网格,我必须将其放入网格的初始化“THIS.RecordSouce = ...”,这意味着网格是“rebuit”并且所有PME都在IDE中构建消失了。谢谢AtoutFox的Gregory。谢谢你们在这里回答的所有问题。 /伯纳德
答案 2 :(得分:0)
先生。伯纳德
我也遇到了同样的问题。我已经使用VFP9多年了,并且在网格文本框中使用事件Keypress没有任何问题。突然之间,到2014年8月底,如果我们将常规放入网格文本框Keypress事件中,所有新网格都不会做出响应。奇怪的是,几周前创建的所有Keypress活动仍然运作良好。
我不知道是什么原因造成的。但是,幸运的是使用BindEvent我们可以解决这个问题。它运作良好。
这是一步:
方法myKeyPress中的例程
LPARAMETERS nKeyCode,nShiftAltCtrl
DO CASE
CASE THISFORM.Grid1.ACTIVECOLUMN = 1
如果nKeyCode = 13
MESSAGEBOX("你在Column1.Text1和#34按ENTER键)
ENDIF
CASE THISFORM.Grid1.ACTIVECOLUMN = 2
如果nKeyCode = 13
MESSAGEBOX("你在Column2.Text1和#34按ENTER)
ENDIF
CASE THISFORM.Grid1.ACTIVECOLUMN = 3
如果nKeyCode = 13
MESSAGEBOX("你在Column3.Text1和#34按ENTER键)
ENDIF
,否则
如果nKeyCode = 13
MESSAGEBOX("为什么按键事件不再适用于Grid的文本框?")
ENDIF
ENDCASE
希望这有帮助。
ps:几个月前我从互联网上获得了BindEvent方法。但是我忘记了最初编写该代码的地点和原因。如果您找到了原始来源,则可以归功于他/她。
此致
Kusni