... What I did is to put a sysrefresh() inside the function. It seems to me that I get slightly better results. But I think a timer would be best. Firing oDlg:bLButtonUp and oDlg:bLClicked . Best regards, Otto static function DoDraw( hDc, x, y, lPaint, lReset, oPen ) if ! lPaint .or. ( lReset != ...