[Lazarus] TStringGrid and cancelling a modal form

José Mejuto joshyfun at gmail.com
Tue Mar 13 09:56:27 CET 2018

El 13/03/2018 a las 9:21, Mark Morgan Lloyd via Lazarus escribió:
>>> Yes, the modal form appears while the mouse button is held down (for 
>>> both GTK2 and Qt).
>> So, yes, seem that grid expects mouseup
> Is there a portable way this can be sent? Otherwise I presume I could 
> fudge it with something like QueueAsyncCall()... unless that also went
> through before the mouse activity was sorted out.
> I'm fairly keen to hack this in such a way that it's not tied to one 
> version of the LCL since I want this program to be fairly easy to build 
> even for people with an old (or no existing) copy of Lazarus etc.


I think the proper solution is to instruct GTK2 to use the MOUSE_UP 
event, but meanwhile QueueAsyncCall will not be the solution as when the 
AsyncCall will be processed grid will be still waiting for MOUSE_UP, so 
my solution would be add a MOUSE_UP and MOUSE_DOWN handlers, something 
like this in pseudo code:



   if SelectChanged then Form.ShowModal();


More information about the Lazarus mailing list