Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2009, 13:32   #1
Temka
Пользователь
 
Регистрация: 07.04.2009
Сообщений: 17
По умолчанию поверх всех окон

как запрограммировать кнопку, чтобы ваша программа была открыта поверх всех окон?
Temka вне форума Ответить с цитированием
Старый 31.05.2009, 13:38   #2
BaronTreep
Форумчанин
 
Регистрация: 29.05.2009
Сообщений: 320
По умолчанию

Form1.FormStyle := fsStayOnTop; // Читай

Можно в свойствах формы (окошко слева)
BaronTreep вне форума Ответить с цитированием
Старый 31.05.2009, 13:52   #3
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Еще способ.
Есть две кнопки ... по нажатию на них пишешь обработчики :
Код:
// "включение" поверх остальных
procedure TForm1.Button1Click(Sender: TObject);
begin
with Form1 do SetWindowPos(Handle,HWND_TOPMOST,Left,Top,Width,Height,SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;

// "отключение" поверх остальных
procedure TForm1.Button2Click(Sender: TObject);
begin
with Form1 do SetWindowPos(Handle,HWND_NOTOPMOST,Left,Top,Width,Height,SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 31.05.2009, 14:05   #4
BaronTreep
Форумчанин
 
Регистрация: 29.05.2009
Сообщений: 320
По умолчанию

Собственно метод класса TForm в файле Form.pas определяет использование CreateWnd через SetWindowPos в зависимости от свойтва fsStayOnTop.

А SetWindowPos уже достает экспорт из user32.dll
BaronTreep вне форума Ответить с цитированием
Старый 31.05.2009, 14:09   #5
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Ничуть не против, но данный подход не вызывает перерисовки окна при изменении его места в Z-порядке, а просто "переносит" его (окно) наверх...
Если конечно же это кому-то нужно в задаче поставленной автором.
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поверх всех окон delphin100 Общие вопросы Delphi 2 19.04.2008 19:00
Поверх всех окон Патрон Общие вопросы Delphi 1 18.04.2008 16:57
форму поверх всех окон КатенокСПб Общие вопросы Delphi 2 26.07.2007 17:48
Форма поверх всех окон (!!!) Viteef Общие вопросы Delphi 12 29.06.2007 00:22
Форма поверх всех окон. Kamikadze_666 Общие вопросы Delphi 1 16.05.2007 07:10