Показать сообщение отдельно
  #7  
Старый 30.12.2007, 18:52
Аватар для Rokuell
Rokuell Rokuell вне форума
Активный
 
Регистрация: 27.12.2006
Адрес: Псков
Сообщения: 274
Версия Delphi: Delphi 7
Репутация: 497
Печаль

Сорри, был занят...
Хм, похоже никак, т.к у QForms свойство Handle имеет другой тип, не HWND, и в процедурах из модуля Windows, его использовать нельзя...
кстати Form1.FormStyle:=fsStayOnTop; тоже не работает, даже не знаю почему, может ошибка в исходниках...

PS: В обычной форме из модуля Forms при присвоении свойства fsStayOnTop происходит пересоздание формы с новым параметром, залез в отладку, происходит вызов:
TCustomForm.SetFormStyle(fsStayOnTop) -> TWinControl.UpdateControlState -> TWinControl.UpdateShowing -> TWinControl.CreateHandle -> TCustomForm.CreateWnd
и вот в последнем методе и проверяется свойство: модуль Forms строка 3712:
Код:
case FormStyle of
...
fsStayOnTop:
        SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or
          SWP_NOSIZE or SWP_NOACTIVATE);
end;

в QForms разобраться немогу, похоже там всё подобное этому вызывается из DLL - qtintf70.dll , поэтому скорее всего ошибка разработчиков: факт остаётся фактом - свойство fsStayOnTop неработает
__________________
Велик и могуч наш Object Pascal !
ICQ: 357-591-887
Ответить с цитированием