[Lazarus] Maybe a bug: click on TImage behind another control with SetShape

Frederic Da Vitoria davitofrg at gmail.com
Sat Nov 22 10:57:00 CET 2014


I may be wrong, but this seems different from the problem you are
describing: in the bugtracker issue, the click triggers the Form handler
instead of being sent to a Control. In your problem, from your description,
I thought the click triggered the polyline control while you would have
wanted it to be handled by the TImage which is behind the polyline. In a
way, your problem is not enough transparency (in terms of who gets to
handle the click event) while the bugtracker bug is too much transparency.
Or did I misunderstand you?

2014-11-22 10:01 GMT+01:00 Fabio Luis Girardi <fluisgirardi at gmail.com>:

> Here is it: http://bugs.freepascal.org/view.php?id=20381
>
> 2014-11-21 22:24 GMT-02:00 Fabio Luis Girardi <fluisgirardi at gmail.com>:
>
> I found this bug on bug tracker. I followed your idea and send a patch
>> that solves this. I'll try another approach tomorrow.
>>
>> Thank you very much!
>> Em 21/11/2014 20:48, "Frederic Da Vitoria" <davitofrg at gmail.com>
>> escreveu:
>>
>> 2014-11-21 16:01 GMT+01:00 Frederic Da Vitoria <davitofrg at gmail.com>:
>>>
>>>>
>>>> 2014-11-20 19:21 GMT+01:00 Fabio Luis Girardi <fluisgirardi at gmail.com>:
>>>>
>>>>> I don't know if this is a bug or not. I created a control from a
>>>>> TCustomControl that draws a polyline with a transparent background. The
>>>>> transparent effect has been using SetShape procedure using a bitmap of 1
>>>>> bit color depth.
>>>>>
>>>>> The "bug" (I don't know if this is a bug) is that a TImage behind of a
>>>>> instance of my polyline control don't receive the click messages, but a
>>>>> TButton instance receives.
>>>>>
>>>>> So, I don't know if this is a bug or I have to do something in my
>>>>> control to send these messages to TImage behind.
>>>>>
>>>>
>>>> I had once a similar issue with a tPanel behind another control, in
>>>> Delphi. IIRC, I indeed had to forward the messages in some way to the
>>>> tPanel. I can check in my archives, if you want, but I won't be able to do
>>>> it before tomorrow.
>>>>
>>>
>>> I just checked. Sorry, my memory was wrong, I did use TButtons. But it
>>> makes sense that the uppermost control would prevent any deeper control
>>> from receiving clicks, even if the uppermost control is visually
>>> transparent.
>>>
>>
-- 
Frederic Da Vitoria
(davitof)

Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20141122/4bbb57b3/attachment-0003.html>


More information about the Lazarus mailing list