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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2011, 22:17   #1
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
Вопрос Как можно сделать так, чтобы дочерняя форма была поверх всех окон после наступления определённого события?

да,да,да...
Здравствуйте!!!

Прошу помочь (проконсультировать) меня в следующем вопросе.

У меня имеется родительская форма (которая не поверх всех окон), на ней расположена кнопка, при нажатии которой появляется форма (дочерняя), которая по началу не должна быть поверх всех окон. На ней располагается кнопочка...

Так вот, вопрос такой: мне необходимо, чтобы при нажатии на эту кнопочку, располагающейся на дочерней форме, окно (дочерняя форма) становилась поверх всех окон остальных приложений.
Как я пытался это организовать? Я делал это так: в обработчике события нажатия на кнопочку дочерней формы просто писал:
Код:
FormStyle:=fsAlwaysOnTop;
Не помогло. Итак, прошу помощи, заранее большое спасибо.
Вадим Мошев вне форума Ответить с цитированием
Старый 08.06.2011, 23:51   #2
volod3000
Форумчанин
 
Аватар для volod3000
 
Регистрация: 18.12.2008
Сообщений: 266
По умолчанию

Вот почитайте , есть дельные советы.

Мало открыть человеку глаза, большинство еще просит указать дорогу и ждет волшебного пенделя.
volod3000 вне форума Ответить с цитированием
Старый 09.06.2011, 00:00   #3
mss
Заблокирован
 
Регистрация: 27.05.2010
Сообщений: 1,099
По умолчанию

Цитата:
необходимо, чтобы ..окно .. становилась поверх всех окон остальных приложений
Ну залезет оно "поверх" на доли секунды и тут же слезет - другой процесс обнаружит твое наглое окно и тут же заберется на него свесив ножки)
Тебе от этого полегчает ?
Полагаешь что ты один такой хитрый ?
Мало ли в этот момент в системе может работать других приложений, которые тоже не прочь забубенить свои окна на самую верхотуру)

Ты вот над этим пораскинь мозгами))
mss вне форума Ответить с цитированием
Старый 10.06.2011, 10:29   #4
tsar_
Форумчанин
 
Аватар для tsar_
 
Регистрация: 06.01.2011
Сообщений: 369
По умолчанию

Попробуйте через SetWindowPos, засунув в обработчик
Цитата:
...определённого события...
.
Когда-то использовал такое:
Код:
SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or
               SWP_NOSIZE or SWP_NOACTIVATE);
Форма становилась поверх всего возможного на экране монитора. Однако, если после этого запустить Диспетчер задач или прочие программы, которые будут лезть наверх, так и быть, ваша форма останется под ними.
Программирую по необходимости
tsar_ вне форума Ответить с цитированием
Старый 10.06.2011, 13:01   #5
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

Да вроде все работает .. formsd.rar
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что нужно сделать, чтобы форма была поверх панели задач? Andr Общие вопросы Delphi 11 25.02.2011 22:06
Как сделать так, чтобы форма была поверх всех окон? Jupiter Общие вопросы Delphi 9 31.07.2009 17:42
Как сделать чтобы форма была над трэем Bigtyoma Общие вопросы Delphi 2 24.09.2008 17:40
Как сделать так чтобы окно формы всегда было поверх остальных окон? HelloZAPOR Общие вопросы Delphi 5 23.07.2007 08:05
Как создать программу-панель (как панель Msoffice), чтобы была поверх всех окон Romanbl4 Общие вопросы Delphi 6 27.06.2007 17:23