Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Grid activity for object under mouse
Message
De
16/12/2008 17:36:58
Jay Johengen
Altamahaw-Ossipee, Caroline du Nord, États-Unis
 
 
À
16/12/2008 17:27:04
Information générale
Forum:
Visual FoxPro
Catégorie:
Gestionnaire d'écran & Écrans
Divers
Thread ID:
01211777
Message ID:
01367971
Vues:
21
I figured it out and it works well now. The issue was a combination that I was trying to make a call to something from there and the MouseMove was bombing due to an overload of READs (DOs). My solution was to move the code I was trying to call directly into that place and then move the functionality from the MouseMove to a custom method that is only run according to a timer. That seems to have resolved it.

>What is it that you're putting in that spot where "the record is available temporarily"? I see the spot for it ... but what are you doing there?
>
>And ... the code you're seeing there is what I've been using for a loooooooong time. Can you post just that block of code, so I can see exactly what you've implemented? Perhaps you've made an inadvertent change, or I eliminated something ... who knows?
>
>
>
>>It does. Would you mind taking a look at my other post "Allowed DO nesting..." if you get a chance? I'm getting this error when I put stuff in the place where it says to put it when the record is available temporarily.
>>
>>>Jay --
>>>
>>>it is the number of the column that you want to have temporarily activated ... normally one.
>>>
>>>In my usage, I am trying to bring up a custom tooltip. The column selected should be one where there is no tooltip.
>>>
>>>Hope this helps.
>>>
>>>
>>>>I'm playing around with this code and you have this line in the code:
>>>>
>>>>* temporarily activate first cell, so that .RelativeRow makes sense
>>>>			lnColno = .Columns(.c_ActivateCellColumn).ColumnOrder
>>>>
>>>>What is c_ActivateCellColumn?
>>>>
>>>>
>>>>>John --
>>>>>
>>>>>I have the following for each column in my grid.
>>>>>
>>>>>I hope this works; I've thrown a lot of code that's clearly irrelevant and distracting -- hopefully that's all I threw away.
>>>>>
>>>>>Procedure MouseMove(x1,x2,x3,x4)
>>>>>	Local nXCoord_In, nYCoord_In, lnColno, lnDiff, loGrid, nWhere_Out, nRelRow_Out, nRelCol_Out
>>>>>	Local nView_Out
>>>>>
>>>>>	With This.Parent
>>>>>
>>>>>		* find out what row we're over
>>>>>		nXCoord_In = Mcol(Wontop(),3)
>>>>>		nYCoord_In = Mrow(Wontop(),3)
>>>>>		Store 0 To nWhere_Out , nRelRow_Out , nRelCol_Out , nView_Out
>>>>>		.GridHitTest(nXCoord_In, nYCoord_In, @nWhere_Out, @nRelRow_Out, @nRelCol_Out)
>>>>>
>>>>>		* over a cell, but not the same as last time
>>>>>		If nWhere_Out = 3 And nRelRow_Out # This.h_DynToolTipRow
>>>>>
>>>>>			* temporarily activate first cell, so that .RelativeRow makes sense
>>>>>			lnColno = This.Parent.Columns(This.Parent.c_ActivateCellColumn).ColumnOrder
>>>>>			lnColno = lnColno + Iif(This.ColumnOrder = lnColno, 1, 0) - .LockColumns
>>>>>			If .RelativeRow = 0 Or .RelativeColumn # lnColno
>>>>>				.SetFocus()
>>>>>				.ActivateCell(Max(1, .RelativeRow), lnColno)
>>>>>			Endif
>>>>>
>>>>>			* move to the record we're interested in
>>>>>			lnDiff = nRelRow_Out - .RelativeRow
>>>>>
>>>>>			Try
>>>>>				Skip (lnDiff) In (.RecordSource)
>>>>>			Catch
>>>>>
>>>>>			EndTry
>>>>>			
>>>>>			*******************************************************
>>>>>
>>>>>			*    temporarily on the right record ...
>>>>>			*    so insert code to do something here ...
>>>>>			
>>>>>			*******************************************************
>>>>>
>>>>>			Skip (-lnDiff) In (.RecordSource)
>>>>>			This.h_DynToolTipRow = nRelRow_Out
>>>>>		Endif
>>>>>	Endwith
>>>>>Endproc
>>>>>
>>>>>
>>>>>Procedure MouseLeave(nButton, nShift, nXCoord, nYCoord)
>>>>>	This.h_DynToolTipRow	= 0
>>>>>	Try
>>>>>		Thisform.ShowTip()
>>>>>	Endtry
>>>>>Endproc
>>>>>
>>>>>
>>>>>>Is there still no way in vfp to get a grid to be aware of the mouse pointer over it? I want to be able to run the mouse over cells in a column and details from the record to be displayed elsewhere on the form, without each cell having to get clicked on, or getting focus. Thanks!
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform