In reply to your message of July 23, 2003

> The answer is simple, but very illusive!!!

> while (GetMessage(wmsg, FWindowHandle, 0, 0)) do begin
>     if not ( IsDialogMessage(FWindowHandle, wmsg) ) then  ///this is the
> line you nees to add
>       TranslateMessage(wmsg);
>     DispatchMessage(wmsg);
>   end;

> If you look at what TranslateMessage actually does it all becomes clear.


THANKS! ... I never would have stumbled on that one without some help.


The final version is this:

    while GetMessage(@oMsg,0, 0, 0) do
      begin
        if not (IsDialogMessage(OHandle,omsg)) then
          begin
            TranslateMessage(oMsg);
            DispatchMessage(oMsg);
          end;
      end;

I had to bracket both translatemessage and dispatchmessage before it would work.

Now the ws_group and ws_defpushbutton work too.

-----
 L D Blake


_______________________________________________
fpc-pascal maillist  -  [EMAIL PROTECTED]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to