Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.10;
Скачать: CL | DM;

Вниз

Вывод окна на передний план   Найти похожие ветки 

 
tio   (2006-07-30 09:29) [0]

Уважаемые, Мастера!
Скажите, как в Windows 98 вывести главное окно MDI на
передний план (2 раза приложение не открывается, стоит мьютекс для защиты, и
файл открытый снова будет автоматически открыт в сущ. приложении).
В Windows XP все работает, но хочется чтобы и в 98.

Вот процедура вывода окна на передний план для XP:

function TMain_f.Finds(s: string): hWnd;
var
 Wnd: hWnd;
 buff: array[0..127] of Char;
begin
 Finds := 0;
 Wnd := GetWindow(Handle, gw_HWndFirst);
 while Wnd <> 0 do
 begin
 if length(buff)> 0 then
  if  (GetWindow(Wnd, gw_Owner) = 0) and
     (GetWindowText(Wnd, buff, sizeof(buff)) <> 0) then
   begin
     GetWindowText(Wnd, buff, sizeof(buff));
     if pos(s, StrPas(buff)) > 0 then
     begin
       Finds := Wnd;
       Break;
     end;
   end;
   Wnd := GetWindow(Wnd, gw_hWndNext);
 end;
 mouse_event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
 mouse_event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
 SetForegroundWindow(wnd);
 Application.ProcessMessages;
end;


 
Phoroon~ ©   (2006-07-30 10:08) [1]

Поднимает окно на передний план
BringWindowToTop(Handle)

ИМХО
На WinXP; Win2000 точно работает


 
tio   (2006-07-30 10:15) [2]

Так нужно и на WIndows 98!!!


 
KilkennyCat ©   (2006-07-30 13:24) [3]

Minimimum win95, nt3.1 (c) MSDN


 
KilkennyCat ©   (2006-07-30 13:25) [4]

Calling this function is similar to calling the SetWindowPos <ms633545.aspx> function to change a window"s position in the Z order. BringWindowToTop does not make a window a top-level window.



Страницы: 1 вся ветка

Текущий архив: 2006.09.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.037 c
15-1155559967
Desdechado
2006-08-14 16:52
2006.09.10
Странные случаи из жизни


2-1156097090
Sergioni
2006-08-20 22:04
2006.09.10
ServerSocket на определенных сетевых картах


2-1156174355
her
2006-08-21 19:32
2006.09.10
RichEdit.Lines.Add


2-1156233763
redlord
2006-08-22 12:02
2006.09.10
а есть ли функция обратная getwindowthreadprocessid


2-1156263776
GunGarry
2006-08-22 20:22
2006.09.10
Заблокировать файл папку