DECLARE SHORT SetWindowPos IN USER32 ; INTEGER hWnd, ; INTEGER hWndInsertAfter, ; INTEGER x, ; INTEGER y, ; INTEGER cx, ; INTEGER cy, ; INTEGER uFlags #DEFINE HWND_TOPMOST_WINDOW -1 #DEFINE SWP_NOMOVE 2 #DEFINE SWP_NOSIZE 1 #DEFINE SWP_SHOWWINDOW 0x40 #DEFINE SWP_BRINGTOTOP SWP_NOSIZE + SWP_NOMOVE + SWP_SHOWWINDOW DECLARE INTEGER GetLastError IN WIN32API * I assume that nHwnd is the hWnd of the Form to bring to top IF SetWindowPos(nHwnd,HWND_TOPMOST_WINDOW,0,0,0,0,SWP_BRINGTOTOP) # 0 * It worked ELSE nWinErrorCOde = GetLastError() * API fall down go boom ENDIFThe behavior of ShowWindow is different under Win98/Win2K/WinME, and is documented as such in the July MSDN. THe above acts to activate the Window at its current size and make the window topmost under all platforms.