ok udało się :D
SetWindowPos(MainFrm.Handle, HWND_NOTOPMOST, MainFrm.Left, MainFrm.Top, MainFrm.Width, MainFrm.Height, 0);
choć wydaje mi się dalej to nie eleganckie. Niestety przy OnShow głównej formy to nie działa, dopiero kiedy otwieram Okno modalne i wywołanie tej procedurki powoduje pożądany efekt, najważniejsze by mi użyszkodnicy nie dzwonili, że pracować nie mogą w jakimś pcimiu dolnym gdzie maja Win98 ...
hmm poszperałem troszkę na 4progremmers i zrobiłem funkcję wykrywajacą rodzaj systemu op
function SystemOp: Integer;
var
osInfo : _OSVERSIONINFOA;
checkOK : LongBool;
begin
osInfo.dwOSVersionInfoSize := sizeof(OSVERSIONINFO);
checkOK := GetVersionEx(osInfo);
if (checkOK) then
Result := osInfo.dwMajorVersion
else
Result := -1;
end;
zwracane wartości to
3 dla win3.51
4 rodzina 9x w tym NT4
5 dla nowszych sys win 2k, XP i 2k3
-1 dla nieokreślonego
i używam ta funkcję w takiej kombinacji
if SystemOp=4 then
SetWindowPos(MainFrm.Handle, HWND_NOTOPMOST, MainFrm.Left, MainFrm.Top, MainFrm.Width, MainFrm.Height, 0);
dzięki hmm za pomoc z tego wszystkiego zapomniało mi sie myśleć w drugim kierunku schowania głównej formy, jak widzisz wystarczyło tylko główną formę schować nie jest konieczne dodatkowego pokazywania formy nad już schowaną pod.
Dzięki wszystkim za pomoc temat uważam za skończony :-)