Hi, > El 01/04/2010 19:26, Viktor Szakáts escribió: >> BTW there were a lot of screen painting irregularities without >> WS_EX_LAYERED, when the window was behind another >> window and foremost window was moved. It also fixes painting >> issue when app is doing a loop, or otherwise unresponsive. > > Thanks but this is under control. > Remember that GTWVT is a pure Windows GUI and it need to process messages to > refresh the screen. It does this with the outputs to screen and inputs from > keyboard. In typical code like loops with pure RDDs you can force this with > SetPos .- > > nCursor := SetCursor( 0 ) > WHILE !EOF() > SetPos( 0, 0 ) > ... > SKIP() > ENDDO > SetCursor( nCursor )
I try to avoid such hacks in high-level code if possible, though in most places there is a gauge visible in these operations. Plus, there are cases when this cannot work at all: f.e. when launching another process and waiting for it to complete, or another extreme example when app crashes / hangs. EX_LAYERED will keep a buffer of the screen, which gives better performance for screen refreshes, and it also makes the app behave/look smoother. Regardless I think it's not the job of high-level code to ensure screen refresh. BTW, even with this I can see artifacts with GTWVT, f.e. visible pixel-wide vertical lines between full-block characters. Much worse is GTWIN, where complete pixels are missing/left on screen and which are Windows problems. Brgds, Viktor
<<inline: gtwin-artifact1.png>>
<<inline: gtwin-artifact2.png>>
<<inline: gtwvt-artifact.png>>
_______________________________________________ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour