Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Вниз

Как сделать так чтоб окно было всегда на первом плане   Найти похожие ветки 

 
graY ©   (2004-03-08 09:20) [0]

Функция Formstyly:=onstayonstope не помогает.Вот думаю если    

с таймером поставить какуюнибудь функцию типа апликашион.ресторе но апишную.Подскажите пожайлуста


 
Gero ©   (2004-03-08 09:34) [1]

> Функция Formstyly:=onstayonstope не помогает

И не удивительно. Попробуй FormStyle := fsStayOnTop.


 
graY ©   (2004-03-08 10:18) [2]

речь не про грамотность это я так написал.Все равно не помогает что fsStayOnTop что Fsstayontop если у приложения 2 окна то это почемуто не работает.Один раз щелкнеш на месте второй раз щелкаеш уплывает назад


 
DDA ©   (2004-03-08 12:23) [3]

//-------------------------------
function ForceForegroundWindow(hwnd: THandle): boolean;
const
SPI_GETFOREGROUNDLOCKTIMEOUT = $2000;
SPI_SETFOREGROUNDLOCKTIMEOUT = $2001;
var
ForegroundThreadID: DWORD;
ThisThreadID: DWORD;
timeout: DWORD;
begin
if IsIconic(hwnd) then
  ShowWindow(hwnd, SW_RESTORE);

if GetForegroundWindow = hwnd then
  Result := True
else
begin
  // Windows 98/2000 doesn"t want to foreground a window when some other
  // window has keyboard focus
  if ((Win32Platform = VER_PLATFORM_WIN32_NT) and (Win32MajorVersion > 4))
    or
    ((Win32Platform = VER_PLATFORM_WIN32_WINDOWS) and
    ((Win32MajorVersion > 4) or ((Win32MajorVersion = 4) and
    (Win32MinorVersion > 0)))) then
  begin
    // Code from Karl E. Peterson, www.mvps.org/vb/sample.htm
    // Converted to Delphi by Ray Lischner
    // Published in The Delphi Magazine 55, page 16
    Result := False;
    ForegroundThreadID := GetWindowThreadProcessID(GetForegroundWindow,
      nil);
    ThisThreadID := GetWindowThreadPRocessId(hwnd, nil);
    if AttachThreadInput(ThisThreadID, ForegroundThreadID, True) then
    begin
      BringWindowToTop(hwnd); // IE 5.5 related hack
      SetForegroundWindow(hwnd);
      AttachThreadInput(ThisThreadID, ForegroundThreadID, False);
      Result := (GetForegroundWindow = hwnd);
    end;

    if not Result then
    begin
      // Code by Daniel P. Stasinski
      SystemParametersInfo(SPI_GETFOREGROUNDLOCKTIMEOUT, 0, @timeout, 0);
      SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, TObject(0), SPIF_SENDCHANGE);
      BringWindowToTop(hwnd); // IE 5.5 related hack
      SetForegroundWindow(hWnd);
      SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, TObject(timeout), SPIF_SENDCHANGE);
    end;
  end
  else
  begin
    BringWindowToTop(hwnd); // IE 5.5 related hack
    SetForegroundWindow(hwnd);
  end;

  Result := (GetForegroundWindow = hwnd);
end;
end; { ForceForegroundWindow }
//-----------------------------------------
procedure TForm1.Timer1Timer(Sender: TObject);
begin
 ForceForegroundWindow(Application.Handle);
end;


 
graY ©   (2004-03-08 16:59) [4]

А если посерьёзнее без вирусов


 
NAlexey ©   (2004-03-09 08:46) [5]

>graY ©   (08.03.04 16:59) [4]
Каких таких вирусов?


 
Reindeer Moss Eater ©   (2004-03-09 11:15) [6]

Как сделать так чтоб окно было всегда на первом плане

1. Думаем -  а возможно ли такое?.
2. Допустим, что это возможно.
3. Создаем программу с таким окном.
4. Запускаем её.
5. А потом запускаем вторую копию такой программы.
6. Переходим у п.1



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

Форум: "WinAPI";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.035 c
14-1081399857
Delphi5.01
2004-04-08 08:50
2004.05.02
Specialisti angliskogo pomogite (tolko profi)


7-1074534422
DelphiN!
2004-01-19 20:47
2004.05.02
Получить инормацию о соединениях


7-1078349329
Status
2004-03-04 00:28
2004.05.02
Как закрыть программу, когда пользователь хочет перезагрузиться?


4-1078833130
wr
2004-03-09 14:52
2004.05.02
создание окна


14-1081510366
Lexer
2004-04-09 15:32
2004.05.02
Может есть здесь кто из Харькова





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский