<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    test application from
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="http://bugs.freepascal.org/view.php?id=24120">http://bugs.freepascal.org/view.php?id=24120</a><br>
    <br>
    Addit XInitThreads to the initialiization section of second unit
    after cthreads allows the test application start.<br>
    <br>
    Funny enough that the windows approach - sending a message (message
    would be delivered in a window thread context) does not work  here.<br>
    <br>
    WinaAPI approach:<br>
    <br>
    InvalidateRect(Display.Handle, nil, false); // notify window regions
    on invalidation<br>
    Display.Update; // let the window process its messages<br>
    <br>
    delivers LCL message in context of calling thread.<br>
    <br>
    the only way - TThread.Synchronize(nil,Display.Refresh); <br>
    <br>
    IMO queuing LCL message into main thread message queue can resolve
    lots of bugs.<br>
    <br>
    BTW: Moving mouse over the checkbox and button sometimes display
    their text in the coloured painted rectangles.<br>
    <br>
    regards,<br>
    Anton<br>
  </body>
</html>