Конференция "Основная" » Диалоговое окно не должно перекрываться другими окнами [D7, WinXP]
 
  • dmitry_12_08_73 © (13.07.08 20:14) [0]
    Как сделать, чтобы после открытия диалогового окна типа TOpenDialog  оно не перекрывалось другими окнами. То есть чтобы оно оставалось на переднем плане как обычное окно, у которого FormStyle = fsStayOnTop.
    Процедура API:
    SetWindowPos(OpenDialog1.Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or  SWP_NOSIZE or SWP_NOACTIVATE)
    не помогает
  • KilkennyCat © (13.07.08 21:55) [1]
    Какими другими окнами? вообще, или только своего приложения?
  • oldman © (14.07.08 15:25) [2]

    > Как сделать, чтобы после открытия диалогового окна типа
    > TOpenDialog  оно не перекрывалось другими окнами.


    Так делать нельзя!!!
    Пока ты будешь настраивать параметры печати могут появиться системные сообощения, сообщения антивирусов, почтовые сообщения и т.д.
    А в окнами твоей программы оно и так не должно перекрываться (если не сделать этого специально).
  • Vlad Oshin © (17.07.08 10:48) [3]
    procedure JumpUp;
    var
     Info: TAnimationInfo;
     Animation: LongBool;
     hApp: hWnd;
     nFalse:integer;
    begin
     hApp := Application.Handle;
     if IsIconic(hApp) then
       Application.Restore
     else
     begin
       SetActiveWindow(hApp);
       Info.cbSize := SizeOf(Info);
       if SystemParametersInfo(SPI_GETANIMATION, SizeOf(Info), @Info, 0) then
         Animation := Info.iMinAnimate <> 0
       else
         Animation := False;
       Info.iMinAnimate := nFalse;
       SystemParametersInfo(SPI_SETANIMATION, SizeOf(Info), @Info, 0);
       ShowWindow(hApp, SW_MINIMIZE);
       ShowWindow(hApp, SW_RESTORE);
       Info.iMinAnimate := integer(Animation);
       SystemParametersInfo(SPI_SETANIMATION, SizeOf(Info), @Info, 0);
     end;
     Application.MainForm.Repaint;
    end;

    посмотрите, прикольная штучка, может прикрутите
  • Palladin © (17.07.08 12:30) [4]

    > oldman ©   (14.07.08 15:25) [2]

    ему можно... я уже вижу его будущее... слышу проклятья в его сторону... синяки и оторванные руки... )
 
Конференция "Основная" » Диалоговое окно не должно перекрываться другими окнами [D7, WinXP]
Есть новые Нет новых   [134491   +13][b:0][p:0]