I missed the part about your using Delphi 4. Just in case there's still any confusion: OnMouseEnter/OnMouseLeave are NOT the same as OnMouseDown/OnMouseUp.
I don't recall whether the D4 version of TForm implements OnMouseEnter/OnMouseLeave, does it? If not, I'm quite sure it DOES support the internal VCL notification messages that underlie those events; so equivalents to OnMouseEnter and OnMouseLeave can be created for your D4 TForm descendant. LMK if you want the information on how to do that. stephen Stephen Posey [email protected] -----Original Message----- >From: Peter Kapas <[email protected]> >Sent: Oct 12, 2010 9:23 AM >To: Moderated List for the Discussion of Delphi Programming > excludingDatabase-related topics <[email protected]> >Subject: Re: Recognition ov application window > >Stephen, > >Thanks. I have to try again, because I did it similarly and it was not that, >what I expected. >This is the reason, why I am asking for it again and again. I have older >Delphi 4. Maybe >something is wrong in this version? I updated it with patches found before >on the >Company's website. > >Peter > > >----- Original Message ----- >From: "Stephen Posey" <[email protected]> >To: "Moderated List for the Discussion of Delphi Programming >excludingDatabase-related topics" <[email protected]> >Sent: Monday, October 11, 2010 5:59 AM >Subject: Re: Recognition ov application window > > >> OnMouseEnter and OnMouseLeave don't have anything to do with clicking on >> the window per se; they provide notification when the mouse enters or >> leaves the window's client area; regardless of whether the window has >> focus. >> >> Here's a simple test I tried: >> >> unit mouseOverU1; >> >> interface >> >> uses >> Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, >> Forms, >> Dialogs; >> >> type >> TfrmTestMouseOver = class(TForm) >> procedure FormMouseEnter(Sender: TObject); >> procedure FormMouseLeave(Sender: TObject); >> private >> { Private declarations } >> protected >> public >> { Public declarations } >> end; >> >> var >> frmTestMouseOver: TfrmTestMouseOver; >> >> implementation >> >> {$R *.dfm} >> >> { TfrmTestMouseOver } >> >> procedure TfrmTestMouseOver.FormMouseEnter(Sender: TObject); >> begin >> Self.Color := clRed; >> end; >> >> procedure TfrmTestMouseOver.FormMouseLeave(Sender: TObject); >> begin >> Self.Color := clBtnFace; >> end; >> >> end. >> >> The color change works whether or not the window has focus or is partially >> obscured by other windows. >> >> You also get MouseMove events without the window having focus, try >> something like this: >> >> procedure TfrmTestMouseOver.FormMouseMove(Sender: TObject; Shift: >> TShiftState; X, Y: Integer); >> begin >> Self.Color := RGB(X mod 255, y mod 255, Random(255)); >> end; >> >> >> Does that help any? >> >> Stephen Posey >> [email protected] >> >> >> -----Original Message----- >>>From: Peter Kapas <[email protected]> >>>Sent: Oct 10, 2010 11:38 AM >>>To: Moderated List for the Discussion of Delphi Programming >>> excludingDatabase-related topics <[email protected]> >>>Subject: Re: Recognition ov application window >>> >>>Hi Stephen, >>> >>>Off course, it works if I click on the window. I want to solve the >>>problem, >>>when I move Mouse over the window. I am looking for an indicator, where >>>I can take the info about the object under the moving cursor. >>> >>>Similar - what you advise - is the : Form1.Active, but not really that, >>>what >>>I >>>am looking for. >>> >>>Peter >>> >>>----- Original Message ----- >>>From: "Stephen Posey" <[email protected]> >>>To: "Moderated List for the Discussion of Delphi Programming >>>excludingDatabase-related topics" <[email protected]> >>>Sent: Saturday, October 09, 2010 4:17 PM >>>Subject: Re: Recognition ov application window >>> >>> >>>> Have you tried the OnMouseEnter and OnMouseLeave events? >>>> >>>> Stephen Posey >>>> [email protected] >>>> >>>> >>>> -----Original Message----- >>>>>From: Peter Kapas <[email protected]> >>>>>Sent: Oct 9, 2010 10:16 AM >>>>>To: [email protected] >>>>>Subject: Re: Recognition ov application window >>>>> >>>>>Hi Francois, >>>>> >>>>>Thanks, I already tried it. There are a few standard mouse functions to >>>>>simplify that, >>>>>but the major problem is, when the application window is partly covered >>>>>by >>>>>the other >>>>>Windows applications and I cannot mask the area to say "I do not see >>>>>my application, set-up indicator to False, if for seeing that is True). >>>>>--- >>>>>Peter >>>>>--------------------------- >>>>>> I would like to find method how to recognize, the mouse is over my >>>>>> application window. If that window is partly covered by other >>>>>> application, >>>>>> I want to recognize that situation, in other words, that time, I want >>>>>> see >>>>>> some indicator, which tells me, between mouse cursor and my >>>>>> application >>>>>> window is something. How to do it? (I am using Delphi 4). >>>>> >>>>>Just an idea, not tested. >>>>>Install a mouse hook to get the mouse movements whatever application is >>>>>above your's. Then knowing the area(s) where you application is, you can >>>>>compute if the mouse is within or not, even if your app is behind >>>>>another >>>>>other one. >>>>> >>>>>_______________________________________________ >>>>>Delphi mailing list >>>>>[email protected] >>>>>http://lists.elists.org/cgi-bin/mailman/listinfo/delphi >>>> >>>> _______________________________________________ >>>> Delphi mailing list >>>> [email protected] >>>> http://lists.elists.org/cgi-bin/mailman/listinfo/delphi >>> >>>_______________________________________________ >>>Delphi mailing list >>>[email protected] >>>http://lists.elists.org/cgi-bin/mailman/listinfo/delphi >> >> _______________________________________________ >> Delphi mailing list >> [email protected] >> http://lists.elists.org/cgi-bin/mailman/listinfo/delphi > >_______________________________________________ >Delphi mailing list >[email protected] >http://lists.elists.org/cgi-bin/mailman/listinfo/delphi _______________________________________________ Delphi mailing list [email protected] http://lists.elists.org/cgi-bin/mailman/listinfo/delphi

